資源簡介
linux opencv車牌識別源碼,該源碼,可以定位車牌的位置,并進行裁剪,得到只有車牌位置的子圖像!!適合初學opencv的各類人士!
代碼片段和文件信息
#include?“cv.h“
#include?“highgui.h“
#include?“cxcore.h“
#include?
#include?
#include?
#include?
using?namespace?std;
CvPoint?pt[4];
IplImage*?img?=?0;
IplImage*?img0?=?0;
const?char*?wndname?=?“Demo“;
const?char*?names[]?=?{?“che.jpg“?
????????????????“benze.jpg“
?
??0?};
void?FindContours(IplImage*?srcIplImage*src1);
IplImage*cvGetSubImage(IplImage*imageCvRect?roi);
int?main(int?argc?char**?argv)
{
????int?i;
????for(?i?=?0;?names[i]?!=?0;?i++?)
????{
????????img0?=?cvLoadImage(?names[i]?0?);
????????if(?!img0?)ing
????????{
????????????printf(“Couldn‘t?load?%s/n“?names[i]?);
????????????continue;
????????}
img=cvCreateImage(cvSize(400300)81);
IplImage*?pyr=cvCreateImage(cvSize(img->width/2img->height/2)IPL_DEPTH_8U1);
cvResize(img0img);
cvNamedWindow(“input“1);
cvShowImage(“input“img);
cvSmooth(imgimgCV_GAUSSIAN);
????????//img?=?cvCloneImage(?img0?);
IplImage*?imgS=cvCreateImage(cvGetSize(img)IPL_DEPTH_16S1);
IplImage*?imgTh=cvCreateImage(cvGetSize(img)IPL_DEPTH_8U1);
IplImage*?temp=cvCreateImage(cvGetSize(img)IPL_DEPTH_8U1);
????????cvSobel(imgimgS203);
????????cvNormalize(imgSimgTh2550CV_MINMAX);
????????cvNamedWindow(?wndname1);
cvNamedWindow(“Sobel“1);
cvShowImage(“Sobel“imgTh);
cvThreshold(?imgTh?imgTh?100?255?CV_THRESH_BINARY?);
for?(int?k=0;?kheight;?k++)
for(int?j=0;?jwidth;?j++)
{
imgTh->imageData[k*img->widthStep+j]?=?255?-?imgTh->imageData[k*img->widthStep+j];
}
cvNamedWindow(“Th“1);
cvShowImage(“Th“imgTh);
IplConvKernel*?K=cvCreateStructuringElementEx(3110CV_SHAPE_RECT);
IplConvKernel*?K1=cvCreateStructuringEle
評論
共有 條評論