首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MATLAB中ocr中的误差

MATLAB中ocr中的误差
EN

Stack Overflow用户
提问于 2015-06-24 13:35:59
回答 1查看 78关注 0票数 0

我试着用MATLAB的OCR来写一些文字,recognition.This是我代码的一部分-

代码语言:javascript
复制
r = ocr(n1,'TextLayout','Word')
if strcmp(r.Text,char('_'))==1 | strcmp(r.Text,char('/'))==1 
        figure,imshow(n1);title('False image to be removed');
else
        n2=imadd(n2,n1);figure,imshow(n2);title('uuu1');
end

这是我的ocr结果-

代码语言:javascript
复制
r = 

  ocrText with properties:

                      Text: '/

'
    CharacterBoundingBoxes: [3x4 double]
      CharacterConfidences: [3x1 single]
                     Words: {'/'}
         WordBoundingBoxes: [315 133 16 9]
           WordConfidences: 0.7857

因此,所识别的文本是/,所以它应该进入我的code.But的if部分--它总是进入else part.How --我能修复这个吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-24 14:16:35

据我所见,在r.Text的末尾有一些空格,在检查之前,您必须删除这些空格。或者,检查r.Text的第一个字符。

要从字符串中删除尾随空格和前导空格,可以使用:

代码语言:javascript
复制
str = strtrim(r.Text)

若要只处理第一个可以使用的字符,请执行以下操作:

代码语言:javascript
复制
r.Text(1)

因此,您的线路将是以下之一:

代码语言:javascript
复制
if strcmp(strtrim(r.Text),char('_'))==1 | strcmp(strtrim(r.Text),char('/'))==1

if strcmp(r.Text(1),char('_'))==1 | strcmp(r.Text(1),char('/'))==1 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31028136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档