1,如果是從新創造乙個
iplimage
,則用iplimage* cvcreateimage( cvsize size, int depth, int channels )
,它建立頭並分配資料。
注:當不再使用這個新影象時,要呼叫
void cvreleaseimage( iplimage** image )
將它的頭和影象資料釋放! 2
,如果有影象資料沒有為影象頭分配儲存空間(即,沒有為
iplimage*
指標分配動態儲存空間),則先呼叫
iplimage* cvcreateimageheader( cvsize size, int depth, int channels )
建立影象頭,再呼叫
void cvsetdata( cvarr* arr, void* data, int step )
指定影象資料,可以理解為將這個新影象的資料指標指向了乙個已存在的影象資料上,不存在影象資料儲存空間的分配操作。
注:當不再使用這個新影象時,要呼叫
void cvreleaseimageheader( iplimage** image )
將它的影象頭釋放! 3
,如果有影象資料也有影象頭(用於
iplimage
為靜態分配儲存空間的情況),則先呼叫
iplimage* cvinitimageheader( cvsize size, int depth, int channels )
更改影象頭,再呼叫
void cvsetdata( cvarr* arr, void* data, int step )
指定影象資料。
注:因為這個新影象使用的是其它影象的資料和已有的影象頭,所以不能使用
cvreleaseimage
將它的頭和影象資料釋放,也不能使用
cvreleasedata
將它的影象資料釋放! 4
,如果從已有的乙個影象建立,則用
iplimage* cvcloneimage( const iplimage* image )
,它製作影象的完整拷貝包括頭、
roi和資料。
注:當不再使用這個新影象時,要呼叫
void cvreleaseimage( iplimage** image )
將它的頭和影象資料釋放!
opencv建立負片
現將rgb模式轉為gray模式,變為單通道,然後反轉,就會出現負片的效果 include includeusing namespace cv using namespace std int main int argc,char ar namedwindow input window autosize...
openCV中的矩陣建立和釋放
分類 opencv 學習 2012 02 19 16 05 1862人閱讀收藏 舉報 null floatc 學習opencv中對於其矩陣總是搞混,現在通過學習,算是有一點理解,同大家分享一下 一矩陣的建立 1 cvmat cvcreatemat int rows,int cols,int type...
eclipse 建立opencv工程
新增路徑 在環境變數 ld library path 中指明庫的搜尋路徑。export ld library path home pt ptwork gitwork opencv 3.3.0 build lib ld library path可以用下面的命令檢視 ld libray path 的設定...