2013-09-27 273 views
3

我有一個CV_16UC1類型的cv :: Mat圖像,我需要CV_8UC1,所以我可以在其上運行cv :: integral。我不擔心轉換過程中的溢出問題 - 基本上我只想將圖像從unsigned short批量轉換爲unsigned char。如何將cv :: Mat類型從CV_16UC1轉換爲CV_8UC1

我問別處有人建議cvtColor,但我不知道使用了什麼轉換代碼。

+0

http://docs.opencv.org/modules/core/doc/basic_structures.html#mat-convertto –

回答

8

如何使用Mat :: convertTo? Documentation

一個簡單的例子:(不知道你是否需要比例因子雖然,因爲我沒試過)

Your16Image.convertTo(outputImage,CV_8UC1,比例因子)

+0

這對我有用 - 但事實證明,我需要cv :: threshold,因爲我想輸入一個二進制圖像到cv :: integral。注意到任何人都有類似的問題。 cv :: threshold(m,binary,0,1,CV_THRESH_BINARY); – escapecharacter

+0

您是否使用比例因子? (你可能會發布所有步驟......?)。謝謝 – Tanasis