水平投影直方圖

<!-- lang: cpp -->
//水平投影直方圖

IplImage* HorizontalProject(IplImage *src) { int height=src->height; int width=src->width; int *widthPix=new int[height]; IplImage *dst=NULL; for (int i=0;i<height;i++) { widthPix[i]=0; }code

for (int i=0;i<height;i++)
{
	for (int j=0;j<width;j++)
	{
		if (cvGetReal2D(src,i,j)==255)
		{
			widthPix[i]+=1;
		}
	}
}
dst=cvCreateImage(cvSize(width/2,height),8,1);
for (int i=0;i<height;i++)
{
	cvDrawLine(dst,cvPoint(widthPix[i]*0.5,i),cvPoint(width,i),CV_RGB(0,0,0),1);
}
delete widthPix;
return dst;

}co

相關文章
相關標籤/搜索