#include "stdafx.h"
#include
#include
#include
#include
#pragma comment(lib,"cv.lib")
#pragma comment(lib,"cvcam.lib")
#pragma comment(lib,"cxcore.lib")
#pragma comment(lib,"highgui.lib")
//返回指定影象的直方圖
cvhistogram *getimagehistogram(iplimage *psourceimage)
;cvcvtpixtoplane(psourceimage,ph_plane,ps_plane,pv_plane,null);
int nhbins = 30;
int nsbins = 32;
cvhistogram *presulthistogram = null;
;float dhranges = ;
float dsranges = ;
float *pranges = ;
presulthistogram = cvcreatehist(
2,szhistsize,
cv_hist_array,
pranges
);//計算直方圖
cvcalchist(p_planearray,presulthistogram,0,null);
if (presulthistogram != null)
else}}
int main(int argc, char* argv)
;//建立結果影象
iplimage *presultimage = cvcreateimage(cvgetsize(pdetectimage),pdetectimage->depth,1);
assert(presultimage != null);
//執行反向投影操作
cvcalcbackproject(p_planearray,presultimage,phandhitogram);
//顯示結果
cvnamedwindow("show_result");
cvshowimage("show_result",presultimage);
cvwaitkey();
return 0;
}
反向投影 calcBackProject
影象的反向投影圖是用輸入影象的某一位置上畫素值 多維或灰度 對應在直方圖的乙個bin上的值來代替該畫素值,所以得到的反向投影圖是單通的。用統計學術語,輸出影象象素點的值是觀測陣列在某個分布 直方圖 下的概率。其中b xi 表示在位置 xi上畫素對應的直方圖第 b xi 個bin 直方圖共m個 bin...
OpenCV計算反向投影
反向投影概念的理解 首先,對上圖紅色方框的imgroi區域,計算灰度直方圖並進行歸一化,為了好解釋,這裡假設直方圖有5個bin 實際上我的程式為256個bin 歸一化範圍為0.0 255.0 實際上我的程式為0.0 1.0 畫素值的取值範圍是0 51,51 102,102 153,153 204,2...
規則引用筆記 可能更新可能不更新
建立了idisposable型別的本地物件,但該物件不會被釋放,除非對物件的所有引用都超出範圍。預設情況下,此規則會分析整個 庫,但這是可配置的。可使用using語句來包裝實現idisposable的物件。以這種方式包裝的物件將自動在using塊的末尾釋放。但是,以下情況不應或不能使用using語句...