xxxx18一60岁hd中国/日韩女同互慰一区二区/西西人体扒开双腿无遮挡/日韩欧美黄色一级片 - 色护士精品影院www

  • 大小: 24.49MB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2023-06-28
  • 語言: 其他
  • 標簽: OpenCV??

資源簡介

實現了基于opencv 的手寫數字字符識別 主要參照文章: http://blog.damiles.com/2008/11/basic-ocr-in-opencv/ 基本上就是按著人家的代碼來配置的,完后小改動了幾個參數,寫了一個文檔,方便大家學習吧。

資源截圖

代碼片段和文件信息

/*
?*??basicOCR.c
?*??
?*
?*??Created?by?damiles?on?18/11/08.
?*??Copyright?2008?Damiles.?GPL?License
?*
?*/
#ifdef?_CH_
#pragma?package?
#endif

#ifndef?_EiC
#include?“cv.h“
#include?“highgui.h“
#include?“ml.h“
#include?
#include?
#include?
#endif

#include?“preprocessing.h“
#include?“basicOCR.h“

basicOCR::basicOCR()//構造函數
{

//initial
sprintf(file_path??“OCR/“);
train_samples?=?50;//訓練樣本,總共100個,50個訓練,50個測試
classes=?10;//暫時識別十個數字

size=128;//


trainData?=?cvCreateMat(train_samples*classes?size*size?CV_32FC1);//訓練數據的矩陣
trainClasses?=?cvCreateMat(train_samples*classes?1?CV_32FC1);

//Get?data?(get?images?and?process?it)
getData();

//train
train();
//Test
test();

printf(“?------------------------------------------------------------------------\n“);
printf(“|\t識別結果\t|\t?測試精度\t|\t??準確率\t|\n“);
printf(“?------------------------------------------------------------------------\n“);


}



void?basicOCR::getData()
{
IplImage*?src_image;
IplImage?prs_image;
CvMat?rowdata;
char?file[255];
int?ij;
for(i?=0;?i {
for(?j?=?0;?j {

//加載pbm格式圖像,作為訓練
if(j<10)
sprintf(file“%s%d/%d0%d.pbm“file_path?i?i??j);
else
sprintf(file“%s%d/%d%d.pbm“file_path?i?i??j);
src_image?=?cvLoadImage(file0);
if(!src_image)
{
printf(“Error:?Cant?load?image?%s\n“?file);
//exit(-1);
}
//process?file
prs_image?=?preprocessing(src_image?size?size);

//Set?class?label
cvGetRow(trainClasses?&row?i*train_samples?+?j);
cvSet(&row?cvRealScalar(i));
//Set?data?
cvGetRow(trainData?&row?i*train_samples?+?j);

IplImage*?img?=?cvCreateImage(?cvSize(?size?size?)?IPL_DEPTH_32F?1?);
//convert?8?bits?image?to?32?float?image
cvConvertScale(&prs_image?img?0.0039215?0);

cvGetSubRect(img?&data?cvRect(00?sizesize));

CvMat?row_header?*row1;
//convert?data?matrix?sizexsize?to?vecor
row1?=?cvReshape(?&data?&row_header?0?1?);
cvCopy(row1?&row?NULL);
}
}
}

void?basicOCR::train()
{
knn=new?CvKNearest(?trainData?trainClasses?0?false?K?);
}

float?basicOCR::classify(IplImage*?img?int?showResult)//第二個參數主要用來控制是測試訓練樣本還是手寫識別
{
IplImage?prs_image;
CvMat?data;
CvMat*?nearest=cvCreateMat(1KCV_32FC1);
float?result;
//處理輸入的圖像
prs_image?=?preprocessing(img?size?size);

//Set?data?
IplImage*?img32?=?cvCreateImage(?cvSize(?size?size?)?IPL_DEPTH_32F?1?);
cvConvertScale(&prs_image?img32?0.0039215?0);
cvGetSubRect(img32?&data?cvRect(00?sizesize));
CvMat?row_header?*row1;
row1?=?cvReshape(?&data?&row_header?0?1?);

result=knn->find_nearest(row1K00nearest0);

int?accuracy=0;
for(int?i=0;i {
if(?(nearest->data.fl[i])?==?result)
????????????????????accuracy++;
}
float?pre=100*((float)accuracy/(float)K);
if(showResult==1)
{
printf(“|\t????%.0f????\t|?\t????%.2f%%??\t|?\t?%d?of?%d?\t|?\n“resultpreaccuracyK);
printf(“?------------

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

?????文件?????248320??2013-11-29?17:36??基于opencv?的手寫數字字符識別\基于opencv的手寫數字字符識別.doc

?????文件????1539898??2013-11-19?11:03??基于opencv?的手寫數字字符識別\基于OpenCV的脫機手寫字符識別技術_許雁飛.pdf

?????文件??????87515??2013-11-27?19:24??基于opencv?的手寫數字字符識別\實驗結果截圖\實驗結果2.jpg

?????文件??????89254??2013-11-27?19:26??基于opencv?的手寫數字字符識別\實驗結果截圖\實驗結果9.jpg

?????文件??????29696??2013-11-24?22:12??基于opencv?的手寫數字字符識別\流程圖\主流程圖.vsd

?????文件??????59904??2013-11-25?17:39??基于opencv?的手寫數字字符識別\流程圖\細化流程圖.vsd

?????文件???23581429??2013-11-28?16:19??基于opencv?的手寫數字字符識別\源代碼\VS工程\Character_Recognition.rar

?????文件???????3885??2013-11-27?20:08??基于opencv?的手寫數字字符識別\源代碼\代碼\basicOCR.cpp

?????文件????????608??2013-11-26?17:34??基于opencv?的手寫數字字符識別\源代碼\代碼\basicOCR.h

?????文件???????3534??2013-11-25?22:47??基于opencv?的手寫數字字符識別\源代碼\代碼\main.cpp

?????文件???????3013??2013-11-27?17:53??基于opencv?的手寫數字字符識別\源代碼\代碼\preprocessing.cpp

?????文件????????319??2013-11-21?20:47??基于opencv?的手寫數字字符識別\源代碼\代碼\preprocessing.h

?????文件????2992128??2013-11-27?20:08??基于opencv?的手寫數字字符識別\程序\Character_Recognition.exe

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\000.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\001.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\002.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\003.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\004.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\005.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\006.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\007.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\008.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\009.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\010.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\011.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\012.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\013.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\014.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\015.pbm

?????文件??????16580??2012-07-02?01:25??基于opencv?的手寫數字字符識別\程序\OCR\0\016.pbm

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

評論

共有 條評論