91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

用opencv對條碼進行識別

資源截圖

代碼片段和文件信息

#include??
#include
#include?“BarCodeRec.h“
#include?“cv.h“
#include?“highgui.h“
#include?“string.h“
#include?
#include?
#include?




using?namespace?cv;?
using?namespace?std;
using?namespace?barcode;

char*?Barcode(char*?ImageName);//總的封裝接口
double?otsu(const?IplImage?*src_image);?//大津法求閾值
double?Kittler(?IplImage?*imge?);
void?OnPicSb(IplImage?*imge);
BOOL?PreProcess(IplImage?*imge);
BOOL?Recognize();
int?JudgNum(int?w1?int?w2?int?w3?int?w4?double?mx);

/////////////////////////////////////////////////////////////////////////////
char*?Barcode(char*?ImageName)
{
//?TODO:?Add?your?command?handler?code?here
IplImage*?pImg;?//聲明IplImage指針

//?Matlab風格的cvLoadImage?函數的另一種調用
IplImage?*img?=?cvLoadImage(ImageName1);
if(!img)//載入失敗
{
printf(“Can?not?load?image?%s?/n“ImageName);
return?NULL;
}
if(!img->imageData)//載入的圖像數據是否正確
return?NULL;

/*IplImage?*gray?=?NULL;
IplImage?*binary?=?NULL;
gray?=?cvCreateImage(cvGetSize(img)?IPL_DEPTH_8U?1);//轉化成灰度圖
cvCvtColor(img?gray?CV_BGR2GRAY);
binary?=?cvCreateImage(cvGetSize(gray)?IPL_DEPTH_8U?1);//創建二值圖
*/

cvNamedWindow(“image“CV_WINDOW_AUTOSIZE?);//創建窗口,窗口名字為image
cvShowImage(“image“img);//在剛創建的image窗口中載入圖像
//創建一個與img相同大小的圖像img1
IplImage?*img1?=?cvCreateImage(cvGetSize(img)IPL_DEPTH_8U1);
//色彩空間轉換,將源彩色圖像img轉化成目標灰色圖像imag1
cvCvtColor(imgimg1CV_BGR2GRAY);?//灰度化

//二值化
IplImage?*img_thre?=?cvCreateImage(cvGetSize(img1)IPL_DEPTH_8U1);
// IplImage?*img3?=?cvCreateImage(cvGetSize(img1)IPL_DEPTH_8U1);
/*void?cvThreshold(?const?CvArr*?src?CvArr*?dst?double?threshold
???????double?max_value?int?threshold_type?);
??void?cvAdaptiveThreshold(?dst?dst?255?CV_ADAPTIVE_THRESH_MEAN_C
???????CV_THRESH_BINARY?9?-10);*/
cvThreshold(?img1?img_thre?otsu(img1)255?CV_THRESH_BINARY);
// cvThreshold(?img1?img_thre?Kittler(img1)255?CV_THRESH_BINARY);

IplImage*?out_smooth?=?cvCreateImage(cvGetSize(img_thre)??
IPL_DEPTH_8Uimg_thre->nChannels);???

????cvSmooth(img_threout_smoothCV_MEDIAN3img_thre->nChannels);
//識別
// OnPicSb(out_smooth);
PreProcess(out_smooth);
Recognize();

cvNamedWindow(“ThreImage“CV_WINDOW_AUTOSIZE);//創建窗口,窗口名字GrayImage
cvShowImage(“ThreImage“img_thre);//載入轉化后的圖像

cvNamedWindow(“SmoothImage“CV_WINDOW_AUTOSIZE);//創建窗口,窗口名字GrayImage
cvShowImage(“SmoothImage“out_smooth);//載入轉化后的圖像

cvWaitKey(0);
cvReleaseImage(&img);
cvReleaseImage(&img1);
cvReleaseImage(&img_thre);
cvReleaseImage(&out_smooth);
cvDestroyAllWindows(?);
return?0;


}

double?otsu(const?IplImage?*src_image)?//大津法求閾值
{
double?sum?=?0.0;
double?w0?=?0.0;
double?w1?=?0.0;
double?u0_temp?=?0.0;
double?u1_temp?=?0.0;
double?u0?=?0.0;
double?u1?=?0.0;
double?delta_temp?=?0.0;
double?delta_max?=?0.0;

//src_image灰度級
int?pixel_count[256]={0};
float?pixel_pro[256]={0};
double?threshold?=?0.0;
uchar*?data?=?(

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????366054??2013-10-09?10:12??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\001.bmp

?????文件?????412086??2013-10-09?10:13??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\002.bmp

?????文件??????74754??2013-10-09?10:11??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\003.bmp

?????文件?????297386??2013-10-09?10:13??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\004.bmp

?????文件?????449334??2013-10-09?10:11??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\005.bmp

?????文件????1134390??2013-10-09?10:11??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\006.bmp

?????文件????2088594??2008-12-12?19:14??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\007.bmp

?????文件?????122427??2013-10-09?11:40??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\a.txt

?????文件??????????0??2013-10-09?12:47??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\b.txt

?????文件??????16149??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\BarCodeRec.cpp

?????文件???????1117??2013-10-09?10:57??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\BarCodeRec.h

?????文件???????1480??2013-10-08?10:41??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\barcode_module929.idc

?????文件???????4614??2016-03-23?17:07??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\barcode_module929.vcxproj

?????文件???????1071??2013-10-03?22:00??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\barcode_module929.vcxproj.filters

????.......???????143??2013-09-29?23:01??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\barcode_module929.vcxproj.user

?????文件?????210951??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\BarCodeRec.obj

?????文件???????1794??2013-10-10?09:12??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.Build.CppClean.log

?????文件????????667??2013-10-10?09:12??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.exe.embed.manifest

?????文件????????732??2016-03-23?17:06??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.exe.embed.manifest.res

?????文件????????381??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.exe.intermediate.manifest

?????文件?????????75??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.lastbuildstate

?????文件???????3642??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.log

?????文件????????713??2016-03-23?17:06??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.vcxprojResolveAssemblyReference.cache

?????文件??????????0??2016-03-23?17:06??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929.write.1.tlog

?????文件????????224??2013-10-10?09:12??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\barcode_module929_manifest.rc

?????文件???????1686??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\cl.command.1.tlog

?????文件??????71930??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\CL.read.1.tlog

?????文件????????868??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\CL.write.1.tlog

?????文件??????????2??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\link-cvtres.read.1.tlog

?????文件??????????2??2016-03-23?17:17??Opecv_一維碼識別barcode_module929\barcode_module929\barcode_module929\Debug\link-cvtres.write.1.tlog

............此處省略70個文件信息

評論

共有 條評論