[問題] opencv mat內數值一問

作者: a98765s (綠茶微微)   2016-12-06 10:59:57
開發平台(Platform): (Ex: Win10, Linux, ...)
visual c++ 2010 express
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
opencv 2.4.9
問題(Question):
http://i.imgur.com/EbvC6fa.jpg
http://i.imgur.com/F0XLpgb.jpg
圖一是我一開始讀圖檔,有順便轉灰階
step內的buf 數值是1600 1
圖二是把讀進來的圖convert成32f
可是step內的buf變成6400 4
問題1
為什麼會變?
問題2
它這樣維度有變嗎?
圖片是照螢幕才會這麼醜
目前電腦不能連ptt
只能用手機
先說抱歉
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
作者: clang (llvm)   2016-12-06 11:48:00
一開始讀進來型別是8U(char),大小是1,一列1600; 轉32f(float),一個值大小是4,一列6400; 圖片依然是900*1600,看rows跟cols厄手機回文字被切開了@@
作者: a98765s (綠茶微微)   2016-12-06 11:57:00
沒關係 看的懂 那個值是代表什麼值呢?
作者: clang (llvm)   2016-12-06 12:00:00
取值的時候每個值間隔的距離它把所有的值拉成一維uchar*存著,然後取值的時候可以用data[ buf[0]*row+buf[1] ] 的方式找到值 (這邊只是舉例,實際上還有channel要考慮)上面少打... buf[1]*col
作者: a98765s (綠茶微微)   2016-12-06 12:21:00
謝謝!!!了解了

Links booklink

Contact Us: admin [ a t ] ucptt.com