openCV中convertTo的用法1

2021-08-23 12:13:36 字數 722 閱讀 8184

convertto的用法

src.convertto(dst, type, scale, shift)

img引數為影象資料**,其型別為mat。

注意也不是所有格式的mat型資料都能被使用儲存為,目前opencv主要只支援單通道和3通道的影象,並且此時要求其深度為8bit和16bit無符號(即cv_16u),所以其他一些資料型別是不支援的,比如說float型等。

如果mat型別資料的深度和通道數不滿足上面的要求,則需要使用convertto()函式和cvtcolor()函式來進行轉換。

convertto()函式負責轉換資料型別不同的mat,即可以將類似float型的mat轉換到imwrite()函式能夠接受的型別。

而cvtcolor()函式是負責轉換不同通道的mat,因為該函式的第4個引數就可以設定目的mat資料的通道數(只是我們一般沒有用到它,一般情況下這個函式是用來進行色彩空間轉換的)。

另外也可以不用imwrite()函式來存資料,可以直接用通用的xml io介面函式將資料存在xml或者yxml中。

參考**:here

例:cv::mat src, src_f;

image.convertto(src_f, cv_32f, 1.0/255, 0);

影象大小沒有變化,但是型別又uint8變為了float32位,感覺還有待認識,僅供參考,有知道的朋友請解惑,謝謝!

Opencv中cvFindContours函式解析

cvfindcontours 2013 01 17 13 26 44 分類 c c int nc cvfindcontours rawimage,storage,first contour,sizeof cvcontour cv retr list nc返回值為,檢測出來的輪廓個數。cv retr ...

OpenCV學習 OpenCV中的工具函式

opencv庫中還提供了一些專用功能,可以更好的處理計算機視覺中普遍出現的數學和其他問題。在庫的環境中它們被稱為工具函式。工具函式包含數學操作 測試 錯誤生成 記憶體與執行緒處理 優化及其他的工具。函式名稱 描述cv alignptr 對齊指標到給定位元組數 cv alignsize 將緩衝區大小給...

Opencv中cvLoadImage記憶體洩露問題

cvloadimage函式 在程式中這個函式使用一次兩次感覺不來,但在處理序列影象迴圈呼叫這個函式時,記憶體洩露的可能讓你目瞪口呆!最近,在乙個2000張樣張的資料集上進行批處理,我觀察任務管理器記憶體分配的情況,發現內存在不斷的被消耗掉!原因可能是,每次loadimage的時候,記憶體都會重新分配...