良好設(shè)計的要素之一是最小驚訝原則(又稱最小意外原則)。一個好的直觀設(shè)計讓用戶不會思考。
當(dāng)你看到門上的把手時,你想拉它。當(dāng)你看到一扇帶有金屬板的門時,你想推它。這些是門的使用者的期望,當(dāng)門的設(shè)計者尊重這些期望時,用戶可以在不施加任何精神能量的情況下使用門。但如果設(shè)計與用戶的期望不一致,那么簡單的開門動作就會成為一種心理負(fù)擔(dān)。
OpenCV 是一個非常有用的庫,但是說到最小意外原則,它就是一場不合格的災(zāi)難。當(dāng)我在 MATLAB 中編寫計算機視覺代碼時,我很少參考文檔。在使用 OpenCV 時,我在瀏覽器選項卡中永久打開了文檔。
OpenCV 的構(gòu)建似乎考慮到了最大驚喜的原則!這一切都始于默認(rèn)的 BGR 像素格式。它不適用于使用標(biāo)準(zhǔn) RGB 像素格式的庫。例如,當(dāng)您在 OpenCV 中使用imread讀取圖像后嘗試使用matplotlib顯示圖像時,結(jié)果看起來很有趣。
“當(dāng)其他人及其阿姨都使用 RGB 時,為什么不使用 RGB?”
這是我在幾個月前的一次會議上遇到 OpenCV 的創(chuàng)始人 Gary Bradski 博士時問他的問題,盡管我忽略了關(guān)于每個人和他們的阿姨使用 RGB 的部分。他用另一個問題回答了我的問題。
“為什么美國標(biāo)準(zhǔn)的鐵路軌距是 4 英尺 8.5 英寸?”
這個問題的答案當(dāng)然是“因為羅馬馬的屁股!”
對于不知道這個不太真實的故事的人,我從snopes復(fù)制了以下內(nèi)容
為什么他們在 OpenCV 中選擇 BGR 顏色空間?
OpenCV 的早期開發(fā)人員之所以選擇 BGR 顏色格式,是因為當(dāng)時 BGR 顏色格式在相機制造商和軟件提供商中很流行。例如在 Windows 中,當(dāng)使用COLORREF指定顏色值時,它們使用 BGR 格式0x00bbggrr。
BGR 是出于歷史原因做出的選擇,現(xiàn)在我們必須接受它。換句話說,BGR 是 OpenCV 中的馬的屁股。^_^
審核編輯 :李倩
-
RGB
+關(guān)注
關(guān)注
4文章
800瀏覽量
58597 -
OpenCV
+關(guān)注
關(guān)注
31文章
635瀏覽量
41419
原文標(biāo)題:冷知識 | 為什么OpenCV使用BGR顏色格式?
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論