资源简介
利用opencv进行图片马赛克检测,并以视频序列帧进行实验,检测结果非常精确。
代码片段和文件信息
//下一步满足实时要求
#include
#include
#include
#include
using namespace std;
void cal_cubesnumber(int x);
//bool cubeornot(int pint qint z);
int Pixel[2000][2000]={1};
int Tongji[40][2]={0};
#define length 10
void main()
{
int startend;
start=clock();
IplImage *sr = NULL;
IplImage *canny = NULL;
double low_thresh=40.0;
double hig_thresh=200.0;
char name[length];
for(int i=1;i {
//int i=10;
sprintf(name“%d.jpg“i);
string fname=name;
sr=cvLoadImage(fname.c_str());
if(sr!=0)
{
canny=cvCreateImage(cvGetSize(sr)IPL_DEPTH_8U0);
cvCanny(srcannylow_threshhig_thresh3);
cvSaveImage(“Canny.jpg“canny);
cal_cubesnumber(i);
cvReleaseImage(&sr);
cvReleaseImage(&canny);
}
}
end=clock();
double totaltime=(double)(end-start)/CLOCKS_PER_SEC;
cout< getchar();
}
void cal_cubesnumber(int xx)
{
int Tongji[40][2]={0};
IplImage *m=cvLoadImage(“Canny.jpg“1);
int height=(*m).height;
int width=(*m).width;
//bool mark;
IplImage *m1;
m1=cvCreateImage(cvGetSize(m)IPL_DEPTH_8U1);
cvCvtColor(mm1CV_BGR2GRAY);
//cvSaveImage(“Gray.jpg“m1);
/*ofstream outfile(“Pixel.txt“ios::ate);
if(!outfile)
{
cout<<“Can‘t open.“;
exit(0);
}
IplImage *Huizhi;
Huizhi=cvCreateImage(cvGetSize(m1)IPL_DEPTH_8U1);*/
for(int x=0;x {
uchar *ptr=(uchar *)m1->imageData+x*m1->widthStep;
for(int y=0;y {
int intensity=ptr[y];
if(intensity>200)
{
Pixel[y][x]=0;
//cvRectangle(HuizhicvPoint(yx)cvPoint(yx)CV_RGB(25500));
//outfile<<“0“;
}
else
{
Pixel[y][x]=1;
//outfile<<“1“;
}
}
//outfile<<“\n“;
}
//outfile.close();
//cvSaveImage(“mark.jpg“Huizhi);
for(int a=4;a<(*m1).width-4;a++)
for(int bc=3;bc<33;bc++)
{
for(int b=4;b<(*m1).height-4;b++)
{
//mark=cubeornot(abcb);
if( /*
Pixel[a][b+(int)bc/2]==0&&
Pixel[a+bc-1][b+(int)bc/2]==0&&
Pixel[a+(int)bc/2][b]==0&&
Pixel[a+(int)bc/2][b+bc-1]==0&&
*/
Pixel[a][b]==0&&Pixel[a][b+1]==0
&&Pixel[a+bc-2][b-1]==0&&Pixel[a+bc-1][b-1]==0
&&Pixel[a+1][b+bc-2]==0&&Pixel[a+2][b+bc-2]==0
&&Pixel[a+bc-1][b+bc-3]==0&&Pixel[a+bc-1][b+bc-4]==0
) //正方形判断
{
Tongji[bc][0]=bc;
Tongji[bc][1]++;
Pixel[a][b]=1;
}
}
if(Tongji[bc][1]>=15)
{
cout< goto A;
}
}
/*cout< for(int x=3;x<40;x++)
{
if(Tongji[x][1]!=0)
{
cout<<“Length:“;
cout< cout<<“\t“;
cout<<“Number:“;
cout< cout<<“\t“;
cout<<“\n“;
//cout< //break;
}
}*/
//cout<
//getchar();
A: cvReleaseImage(&m);
cvReleaseImage(&m1);
remove(“Canny.jpg“);
remove(“Gray.jpg
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 19257856 2015-11-09 14:10 Masaike_Detection\Debug\Masaike_Detection.exe
文件 777952 2015-11-09 14:10 Masaike_Detection\Debug\Masaike_Detection.ilk
文件 1600512 2015-11-09 14:10 Masaike_Detection\Debug\Masaike_Detection.pdb
文件 57016320 2015-11-09 14:33 Masaike_Detection\ipch\masaike_detection-52b3db26\masaike_detection-bbab2cc5.ipch
文件 437110 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\1.jpg
文件 353148 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\10.jpg
文件 452227 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\2.jpg
文件 471168 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\3.jpg
文件 360696 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\4.jpg
文件 339562 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\5.jpg
文件 337297 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\6.jpg
文件 446593 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\7.jpg
文件 476837 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\8.jpg
文件 672104 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\9.jpg
文件 76235 2015-11-09 14:11 Masaike_Detection\Masaike_Detection\Canny.jpg
文件 437110 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\1.jpg
文件 353148 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\10.jpg
文件 452227 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\2.jpg
文件 471168 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\3.jpg
文件 360696 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\4.jpg
文件 339562 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\5.jpg
文件 337297 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\6.jpg
文件 446593 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\7.jpg
文件 476837 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\8.jpg
文件 672104 2015-09-24 14:21 Masaike_Detection\Masaike_Detection\ceshi\9.jpg
文件 12632 2015-09-25 15:16 Masaike_Detection\Masaike_Detection\ceshi2\0.jpg
文件 24503 2015-09-25 15:16 Masaike_Detection\Masaike_Detection\ceshi2\1.jpg
文件 14657 2015-09-25 15:16 Masaike_Detection\Masaike_Detection\ceshi2\10.jpg
文件 12659 2015-09-25 15:16 Masaike_Detection\Masaike_Detection\ceshi2\11.jpg
文件 11654 2015-09-25 15:16 Masaike_Detection\Masaike_Detection\ceshi2\12.jpg
............此处省略183个文件信息
评论
共有 条评论