12
OpenCV cv::Mat
類型有什麼區別?OpenCV墊類型的區別
更具體地說,CV_64F
和CV_64FC1
或CV_64FC2
之間的區別是什麼?當我創建一個具有double
值的cv::Mat
對象時,我應該使用哪一個?
OpenCV cv::Mat
類型有什麼區別?OpenCV墊類型的區別
更具體地說,CV_64F
和CV_64FC1
或CV_64FC2
之間的區別是什麼?當我創建一個具有double
值的cv::Mat
對象時,我應該使用哪一個?
Cx
部分顯示通道數量在圖像中。也就是說,CV_64FC1
類型的圖像是簡單的灰度圖像和僅具有1個通道:
image[i, j] = 0.5
而CV_64F3
類型的圖像是彩色的圖像與3個通道:
image[i, j] = (0.5, 0.3, 0.7)
(在C++中可以檢查個人像素爲image.at<double>(i, j)
)
CV_64F
與CV_64FC1
相同。所以,如果你只需要二維矩陣(即單通靈),你可以只使用CV_64F
編輯
更一般地,Mat
對象的類型名稱由幾部分組成。這裏的例子爲CV_64FC1
:
CV_
- 這只是一個前綴64
- 每個基本矩陣元素(在BGR圖像中灰度級圖像或單色元件例如像素值)F
比特數 - 基本元素的類型。在這種情況下,它是F
浮法,但也可以S
(簽字)或U
(簽名)Cx
- 通道的圖像數量,因爲我之前提到