• 大小: 26.56MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-07-09
  • 语言: 其他
  • 标签: 汉字识别  

资源简介

利用tesseract_ocr实现对图片中汉字的识别,识别的准确率约为80%。

资源截图

代码片段和文件信息

#include 
#include 
#include   
#include   
#include 
#include 
#include 
//tesseract
#include “strngs.h“  
#include “baseapi.h“
#include “time.h“
using namespace std;
using namespace cv;

#pragma  comment(lib“libtesseract302d.lib“) 

//using namespace std;

void character_area_cut();                        //截取字幕区域
void thinImage(IplImage *srcIplImage *dst);    
void img_dilate(IplImage *dilate);
string UTF8ToGB(const char* str);

void main()
{
cout<<“字幕识别中...\n“;
clock_t startfinish;
double totaltime;
start=clock();

character_area_cut();

//cvWaitKey();

IplImage *pSrc = cvLoadImage(“ROI.jpg“CV_LOAD_IMAGE_GRAYSCALE);  
    if (!pSrc)  
    {  
        cout << “读取字幕失败!“ << endl;  
exit(0);
    }  

    IplImage *pTemp = cvCreateImage(cvGetSize(pSrc)pSrc->depthpSrc->nChannels);  
    IplImage *pDst = cvCreateImage(cvGetSize(pSrc)pSrc->depthpSrc->nChannels);  
      
    //将原图像转换为二值图像  
    cvThreshold(pSrcpTemp2001CV_THRESH_BINARY);   
    //图像细化  
    thinImage(pTemppDst);  
  
    for (int i=0; iheight; ++i)  
    {  
        for (int j=0; jwidth; ++j)  
        {  
            if(i>=0&&i<=4)
CV_IMAGE_ELEM(pDstucharij)= 0;
if(i>=42&&i<=45)
CV_IMAGE_ELEM(pDstucharij)= 0;
if(CV_IMAGE_ELEM(pDstucharij)==1)  
                CV_IMAGE_ELEM(pDstucharij)= 255;  
        }  
    }  
    
cvSaveImage(“thin_result.jpg“pDst);
    //namedWindow(“src“CV_WINDOW_AUTOSIZE);  
    //namedWindow(“dst“CV_WINDOW_AUTOSIZE);  
    //cvShowImage(“src“pSrc);  
    //cvShowImage(“dst“pDst);    
    //waitKey(0);
IplImage *d1=cvLoadImage(“thin_result.jpg“0);
    img_dilate(d1);

IplImage *ms=cvLoadImage(“Img_dilate.jpg“0);
IplImage *pa = cvCreateImage(cvGetSize(ms)ms->depthms->nChannels);  
    IplImage *pb = cvCreateImage(cvGetSize(ms)ms->depthms->nChannels); 

cvThreshold(mspa1281CV_THRESH_BINARY);  
thinImage(papb);
  
    for (int i=0; iheight; ++i)  
    {  
        for (int j=0; jwidth; ++j)  
        {  
if(CV_IMAGE_ELEM(pbucharij)==1)  
                CV_IMAGE_ELEM(pbucharij)= 255;  
        }  
    }  
cvSaveImage(“thin_again.jpg“pb);

IplImage *d2=cvLoadImage(“thin_again.jpg“0);
img_dilate(d2);

char *strdir=“Sharp_pic2.jpg“;
tesseract::TessbaseAPI api;
api.Init(NULL“chi_sim“tesseract::OEM_TESSERACT_ONLY);
//api.SetPageSegMode(tesseract::PSM_AUTO);  
STRING textout;
if(!api.ProcessPages(strdirNULL0&textout))
{
exit(0);
}

string ss;
ss=UTF8ToGB(textout.string());
cout<<“\n识别结果:“<
ofstream outfile(“result.txt“ios::ate);

if(!outfile)
{
cout<<“Can‘t Open.“;
exit(0);
}


outfile< outfile.close();

/*
string output;
ifstream infile;
infile.open(“result.txt“ios::in);
infile>>output;
cout< in

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件   98959360  2015-10-30 16:07  Video_OCR\ipch\video_ocr-9d04db89\video_ocr-a48df226.ipch

     文件       4908  2015-10-30 16:09  Video_OCR\Video_OCR\Debug\Video_OCR.Build.CppClean.log

     文件        417  2015-10-30 16:09  Video_OCR\Video_OCR\Debug\Video_OCR.log

     文件      16059  2015-10-30 15:05  Video_OCR\Video_OCR\Img_dilate.jpg

     文件    1672192  2011-03-14 10:48  Video_OCR\Video_OCR\liblept168.dll

     文件     444944  2011-03-14 10:48  Video_OCR\Video_OCR\liblept168.lib

     文件    3352576  2012-12-25 16:06  Video_OCR\Video_OCR\liblept168d.dll

     文件     446954  2011-03-14 10:45  Video_OCR\Video_OCR\liblept168d.lib

     文件    1534976  2014-03-22 09:13  Video_OCR\Video_OCR\libtesseract302.dll

     文件     113560  2014-03-22 09:13  Video_OCR\Video_OCR\libtesseract302.lib

     文件    4393984  2014-03-22 09:17  Video_OCR\Video_OCR\libtesseract302d.dll

     文件     113892  2014-03-22 09:17  Video_OCR\Video_OCR\libtesseract302d.lib

     文件      10667  2015-10-30 16:09  Video_OCR\Video_OCR\ocr.cpp

     文件         46  2015-10-30 15:05  Video_OCR\Video_OCR\result.txt

     文件      20571  2015-10-30 15:05  Video_OCR\Video_OCR\ROI.jpg

     文件      16741  2015-10-30 15:05  Video_OCR\Video_OCR\Sharp_pic2.jpg

     文件      12807  2015-10-30 15:05  Video_OCR\Video_OCR\thin_again.jpg

     文件      15200  2015-10-30 15:05  Video_OCR\Video_OCR\thin_result.jpg

     文件     102952  2015-10-28 14:17  Video_OCR\Video_OCR\vid.jpg

     文件       4138  2015-10-30 16:09  Video_OCR\Video_OCR\Video_OCR.vcxproj

     文件        941  2015-10-29 09:43  Video_OCR\Video_OCR\Video_OCR.vcxproj.filters

     文件        143  2015-10-29 09:26  Video_OCR\Video_OCR\Video_OCR.vcxproj.user

     文件      66178  2015-10-28 14:26  Video_OCR\Video_OCR\z1.jpg

     文件      86787  2015-10-28 14:17  Video_OCR\Video_OCR\z2.jpg

     文件      64754  2015-10-28 14:22  Video_OCR\Video_OCR\z3.jpg

     文件   39866368  2015-10-30 16:10  Video_OCR\Video_OCR.sdf

     文件        894  2015-10-29 09:26  Video_OCR\Video_OCR.sln

    ..A..H.     15360  2015-10-30 16:09  Video_OCR\Video_OCR.suo

     目录          0  2015-10-30 16:07  Video_OCR\ipch\video_ocr-9d04db89

     目录          0  2015-10-30 16:09  Video_OCR\Video_OCR\Debug

............此处省略7个文件信息

评论

共有 条评论