粉丝437获赞4911

嗯,今天讲点什么呢?嗯,今天讲一个歌 ocr 吧。嗯,有一个朋友,他提了个需求,说要识别这上面的一些所有的文文字,还有数字。 然后呢,当时我想了很多办法,好好多种办法。嗯,例如二 d 的那个 ocr 自负识别啊,但是发现一个问题,就 ocr 那边还要做很多模型,还做一些模板库, 还有很多设置,很多参数,然后呢,觉得有点烦。好,正巧呢,我在最近一直在在弄那个飞降的那个 panda 嘛。然后呢,我找了 下,嗯,突然发现其实潘大爷可以做 ocr 自付识别,其实也是其余这种深度学习的模式做自付识别,那我想是不是可以在这个方向上深入的?呃,去看一下资料呢, 当然这个前提呢,我是要感谢。嗯,我们那个公司啊,他提供了这个硬件平台啊。嗯,让我可以在上面实现各种测试,各种功能啊。嗯,其实这个也叫做一种技术积累吧,反正是有用没用的,这种技术 也叫技术沉淀和积累,说不定什么就用到了。这种只用 ocr 自付识别呢,对不对?那么就今天来讲一下基于那个潘达 ocr 的一个自付识别。嗯,目前我是远程公司的电脑的,电脑应该也可以做, 但是我还是喜欢用公司的电脑,因为配置比较高嘛。然后呢,我们测了找了一下,然后找了一个这个潘达的 ocr, 然后呢?当然我这个已经调通了, 这个调通了,那你可以可以运行一下给大家看一下。 看到了吗?那我们可能看的不是很清楚,这是为什么?因为我比较懒,今天没有去弄那个,没有把这个这些位置啊都显示在 o c r, o c r 上,所以说我们只能用鼠标一个个去。对, 你看到了吗?大概我们上面这些字符,然后他这个是已经识别出来了,跟这个是一样的看到了吗?然后 map, 然后这 这些数字,哎,然后呢?是这个,这个下面这个这一行,然后这个是 a 零二二八这个数字和字符。那其实这种呢是一种用 模型的方式来识别那个 ocr 的,嗯,也是多了一种识别 ocr 的一种方式吧。 您说一说他的好处呢?他的好处可能就是不需要设置那个一些模模板,但当然他也可以做到自己的模本模型啊。呃,我们是用的是一个 他已经下载好的一个模型文件呢,你可以看一下这个模型文件在哪里?这模型库他其实在这里呢, 不是在这里。哦,是在这里。哎,在哪里呢?不是这里不是这里, 不是这里,不是这里。这上面的一个一个库。找一下啊,找一下 啊,是这个看到了吗?是这个,这个他会去动态的去下载这个模型库啊,看到了吗?我们用的是这个 p p 的 o c v 四他这个的,嗯,模型库啊,模型文件他其实有三个模型文件。嗯,我们这个他如果我这个程序运行的时候他就会,如果没有的话去下载下载这些东西,这样的话我们就不需要做 设定了。那我也是第一次做这个,第一次饮用潘的 ocr, 其实遇到了很多很多酷的问题。嗯,很多很多酷的问题。嗯, 最多的是呢就是他的问题是有些模,有些那个库啊,倒不进去,就这个有些库你也倒不进去,还倒的模板倒的那个版本不对,导致了会有问题,然后呢?还有一些别的问题。呃, 我之前用这个这个版本的,看到 cr 的时候呢啊,他报了一个什么系统路径的错误,然后然后他又没有一个主主路径,这是我自己加的。然后呢?嗯,然后呢? 因为不太会用,所以我就在网上去找了很多相关的这个资料啊,大家可以看一下啊, 很多很多巨多的这种这种 o c r 视为的资料。然后呢,我也做了一个这个这个这个 这个非深度学习的一个所有的我认为对我有帮助的这些资料呢,我都会把它嗯链接把它连放起来,然后以后以便于我后以后去去深入的去理解一下, 让我每天都在看这些各种的各种这种网络文章啊,对我有帮助和没帮助的我都会去看一下相关的这个做识别其实挺好玩的,是一种思路,他不总需要调这种参数啊。 啊,当然这个我我做这个 o c r 识别其实也是浅浅的应用了一下。呃,还有一些 用自定义的一个模式啊,做做模型,我这个还没有深入研究,只给大家一分享一下这个当前这个东西啊。 嗯,别看我现在调出来的是,其实调的过程还是挺痛苦的,就是有各种参数啊,就我会写出更多各种参数,然后去找他们那个不同啊,然后尤其是你对他不熟的时候。 dbog 是是很头疼一件事,我一般都是 就在上午的时候第八个,因为我觉得上午的时候精神力比较集中啊,头脑反应比较快, 到下午的时候就脑袋就反应的特别慢,所以一般的时候我就会看资料啊,而不去 debag, 只有灵感的时候才会去 debag 一下。嗯,往往这种时候就解决问题速度特别快,你知道吗?但是呢,嗯,就有解决问题还得益于我这个大量的这种网络文档的阅读啊, 这都是,这是第几批了?我都忘了。是第几批的阅读文档啊,就涉及到 o c r 的,我都会去读一读,看一看,比如他这种这种模型,相较于我以前那种模型啊,他会 那个什么不同啊?然后还有一些就是他到底优点在哪里?看到了吗? 酒的这个飞奖,其实我感觉被飞奖带偏了,越来越往飞奖上面去。去偏这个事情了。看看,我就每天会看这些这些文章啊,等下,等下看一下啊,看, 就是这些文章,我就会读这个这些文章前沿的这些文章,然后去操作一下,看看,得于得益于自己的爱好啊, 看到了吗?就这些一直去看。做 osr 识别,以前我一直认为是用那个呃,微神去做,那现在呢?多了一条,多了一个解决办法的一个方式吧。嗯, 还是比这种方式还是比较好的,也开阔了自己的一个视野啊,也无形中增长了自己的一个见识和一个技术的一个能力吧,感谢大家。

好啊,大家好,我是小德,然后这节课我们说说一个,就是这个 panda 的一个免智库啊,识别文字的啊,怎么用啊?然后这个资源呢,回头会放到全文件里面,有需要的自己下载就好了。 首先我们下载好了就先解压出来,对吧?然后文件有点大啊, 好,解压出来是这么一个文件夹,我们打开, 哎,再点进来,点进来这里面有很多东西啊,然后我们什么都不需要去动它啊,什么都不需要去动,然后只需要运行一个这个 w e b 的这个文件啊, e x e 啊,互缀的这个文件啊,应用程序我们双击,然后双击好了之后,等他这里会提示 啊,如果我们第一次使用有些系统啊,他会提示联网的一个功能啊,这个要勾选一下啊,就是点一下允许访问。 好,这里我们看他这里提示什么,服务器已开始运行,对吧?然后这里有各种方式啊,你可以自己对接啊,也可以就是直接用我们啊,插件里面直接对接。好的啊,一个命令。 好,这个如果提示什么呢啊?就是缺少什么什么库文件啊,你可以运行这个微软常用的这个运行库啊, 双击打开,然后下,根据下一步,下一步啊,根据他的提示进行操作啊,把这些东西安装一下,基本上是都能用的啊, 这里因为我以前已经装过了,所以说我就不安装了。然后如果提示缺少库啊,你就运行这个啊,就 ok 了。这个是我们本地啊,本地可以直接用,比如说我们用模拟器,我们直接搭建到本地就好了啊,只需要开这么一个窗口,哎,也可以最小化的啊。 还有一种方式就是搭建到我们服务器里面去啊,使用方式也一样,就是直接把这个压缩包,哎,直接解压到服务器里面,随便哪个位置都可以,然后也是打开运行这个文件,如果提示啊 缺少什么库,你也是啊,直接用那个什么呢?也是直接用这个微软常用的啊运行库,然后安装一下啊,就可以使用了。 好,那个如果服务器里面啊,我们搭建好了那个对接的这个 ip 地址啊,就是我们服务器公网 ip 地址,然后特别注意的就是幺九八幺幺这个端口需要开通,哎,需要开一下啊, 如果不会开端端口的话,呃,就看一下那个热更新的是怎么开的啊?好,这里我们只说本地啊,本地我们对接就是直接用那个什么呢 啊?我们用这个右键打开网络共享中心,或者在那个,在那个 控制面板里面,对吧?也可以找到我们那个网络网络和共享中心,对吧?这两种方式都一样啊, 然后我们就是不管是无线网还是这有线呢,我们点一下这个链接的东西啊,它会提示一个链接状态,对吧?然后我们看一下一个详细信息,详细信息这里有一个 ip 地址啊,就是 i p v 四的,就最前面有个 i i p v 四是本地的一个 i p 地址,那就是 幺九二点幺六八点零点啊,我这边是,呃,这个啊,幺零二,然后你自己肯定是看你自己的啊,然后我们对接的话就是按这个 ip 地址对接就 好的。嗯, 好,那么现在呢,我们看一下这里有几个啊?有一二三四四个关于敏字库的一个命令啊,我们来看一下,第一个是我们初始化啊,初始化就是我们刚刚讲到的啊,我先把它这个代码复制一下啊, 第一个初始化啊,我们可以放到开头,对吧?然后刚刚我的是一一九二点一六八点零点幺零二,对吧?然后这里我们就填自己的 ip 地址啊,就好了,如果是服务器里面呢,就写公服务器公网 ip 的地址。 然后这个是旋转方向啊,第二个参数是旋转方向,旋转方向,如果我们是这种识 这种竖屏的东西啊,我们就不用旋转啊,直接改成零,如果我们就是那种横屏的游戏,你看自己情况,对吧?他是顺时针的一个旋转方向啊,一般我们只用零和二百七啊, 然后旋转方向,零和二百七,他返回的坐标我里面是已经内置了啊,就是返回的是真实的一个坐标,就是我们抓抓里面截图出来是什么坐标,他就是返回什么坐标啊,不用我们自己哎,再计算了啊。 嗯,像那个九十度还有一百八这两种啊,一般是用不到的啊,然后如果你非得用到这这种那个旋转方向的话啊,你就自己算一下吧。 然后最后一个参数是匹配模式啊,跟我们刚刚啊讲过那个什么元素的啊,对吧? 元素他也有匹配模式啊,就是完全匹配和模糊匹配啊,也是也是一样的啊,参数唯一就是模糊匹配我们的内容啊,参数不唯一我们就是完全匹配啊,一般我们用一比较好啊,因为他免知库识别出来不可能是 百分百是正确的,他有时候可能会有一个字错了啊,或者什么,对吧? 好,那么现在他后面有三个命令啊,一个是返,返回所有内容, 返回所有内容,他的他的参数啊,只有一个范围,对吧? 如果你是全屏,那就四个零啊, 然后返回的结果是一个三维的一个数组, 就是每一行是一个什么?是一个二位数组,然后二位数组的第一个参数是制服串, 它是一个文本,我们识别到的文本的一个名字,然后第二个参数就是一个数主了,对吧?返回中心的坐标啊, x 和 y, 然后第三个参数又是一个数组,他是什么?返回的是范围,就我们这个文字,哎,这个文本的整个的一个范围啊,左上角和右下角的坐标,对吧?然后有几个他就有几个文字,他就有几行。 这个命令一般是用不到啊,就是比如,比如说有特殊情况的啊,需要特殊操作的,你可以就是返回用这个命令,然后把 操作一下,什么就这里面的一些数据啊,提出来来进行自己的操操作就好了。 这个是返回所有内容啊,然后我们常用的就只有两个啊,一个是识别返回文本,就是识别文字,哎,看看这个范围内啊,到底是什么文字,对吧?这个是识别用的啊,还有一个就是找字啊,我们要找什么字 哎?范围加上我们要找的制,然后返回一个坐标,我们可以通过这个坐标进行一个点击的操作,对吧? 敏智库早治呢?返回的是数主啊,如果成功他是返回数主啊,如果失败他就返回这个布尔兹的啊, fast 对吧? 识别,识别它返回的是什么?识别它返回的是文本哎,制服串类型的一个文本而失败呢?也是同样啊,返回 fast, 那么接下来我们就使用一下这个识别的啊,来看一下识别的,只需要给他一个范围就好了, 然后前面我们可以加个输出看一下识别出来的内容是什么啊?然后我们先截个屏 啊,比如说我们选中一个内部存储的一个范围啊,我们加一个调试输出看一下, 哎,他返回的是什么啊?丢实物啊,我们来看一下返回的是内部存储啊四个字,因为我们这个选选中的一个范围啊,只有这么大 啊,一般我们不需要选择太大的啊,太大的话他有可能啊,会干什么?然后现在我们比如说我们选择三个啊,内部存储,还有文件分析器,还有什么东西的,我们选择 这么大的一个范围,然后再重新识别,然后再点调试 来,我没点到啊, 哎,怎么调试不了了? 好了,我们继续一下啊,刚刚调试不了,重启了一下, 然后刚刚选的范围是内部存储,还有那个文件分析器的,按一个位置 就这个范围,我们有时候选择太大,他有可能会获取不到啊, 那我们可以多获取几次啊,然后现在他这个返回的是三个,三个内容啊,一个是文件分析器,还有一个是发现可清理文件,还有一个什么内部存储,对吧?然后他识别的每一个内容啊,他都会 来用这个竖杠隔开啊,后面应该还有一个内容叫空啊, 哎,如果是空的,他有时候也会加进来,没有关系,我们只要排除掉啊,就可以了。 嗯,如果是多个文字啊,它会用竖杠隔开啊,这是我们这个返回文字的一个命令啊, 如果是小范围,他只返回一个,对吧?那多个内容竖杠隔开的,这个是我们常见的一个识别啊,然后还有一个就是我们早字,哎,早字的话是还又多了一个参数啊, 他返回的是什么?返回的是一个数组,比如说我们定一个啊,临时,哎,临时用来接收我们早自的返回值。 比如说我们随便选一个范围啊,我们先截张图, 一般我们正常使用不需要截这么大。那我们只需要大概的啊,比如说这块区域来选中一下啊,然后复制一下它的一个范围,然后比如说我们找字,找字我们可以把全称打进来,也可以打一半啊,比如说我们之前 内部,对吧?内部存储的内部,因为我们使用的是什么啊,说实话的时候使用的是模糊匹配,对吧?然后我们就可以调试一下看看 啊,我忘了加输出了啊,没有加输出,然后这里我们就可以判断一下啊,如果临时等于真的, 我们就输出一下他的坐标零十一,还有零十二,那么我们也可以直接就是点击这个位置啊, 哎,直接点击这个位置也是可以的啊,比如说我们直接调试 啊,这一次他没有找到啊,但是我们可以循环找, 我们先打全程看 啊,幺九九二四零,对吧?幺九九二四零,然后我们看一下它中心的位置,是不是啊? 幺九九二四零,哎,在这个唇的啊,这个地方,对吧?哎,大概的话是它的一个中心的一个位置,因为是根据它的一个返回值啊,来确定的 啊。那么我们啊把后面两个字啊去掉啊,就我们再试一下啊,这个模糊的啊,到底怎么回事?

大家好,欢迎收看成华编程视频教程。在前面两节课当中呢,我们给大家介绍了我们这个项目要完成的一个功能,以及 gcn 这样一个网络结构。然后这节课呢,我们就正式进入代码部分。 首先第一步呢,咱们需要使用 pad ocr 去识别出火车票上面的文字信息,并且呢提取出文字所在的位置,整理之后呢另存成一个 csv 的文件。 好,这是我们要完成的第一个任务。呃,接下来呢,我们还需要做另外一个事情,就是我们这个项目的目的呢,其实是做信息的提取,也就是说我们只是识别出这个火车票上的文字信息,其实是不够的,比如说我们识别出来这样一串文字就是 q 零九九 四五次啊,这样一串数字其实是不够的,我们还需要知道这串数字他其实是我们火车票的编号,对吧?然后这个南京南站呢,其实是起点站,然后北京南站呢是终点站, 那这个文字信息和他真实代表的这个含义,我们需要做一个对应吧,那这个对应关系呢,需要我们手动的去给他打上一个标签。好,所以说这节课呢,咱们总共是两个事情,一个就是使用 pado 三去识别出这个文字内容,第二步呢就是对这个文字内容呢打一个标记,对吧? 好,那么接下来呢,咱们就进入代码环节。呃,因为现在呢,咱们的项目完全是空白的,我们需要把素材图片先导入进来吧,不然的话我们后面读取图片,这个没有东西可以读。好,所以说我们先回到代码当中来新建一个文件夹,这边呢我已经新建好了,就是拍他去 stm, gcni 啊这样的一个文件夹。大家后面在找原码的时候呢,也是找这个呃文件名。好,那么首先呢,咱们需要把这个 demo 里面的呃音铺的这个文件夹里面内容拷过来啊,但是这边呢,我有两个一米七文件夹,其实我们用一个就可以了。然后下面 bike 这个呢是, 呃没有打码之前呢,因为我这边有一些火车票上面的图片,我处理了一下。呃,主要是这个二维码的问题啊,二维码这一块呢,我把它给脱掉了啊,就免得视频里面出现一些问题。好,所以说我们先把这个文件夹呢给他考过来吧, 放到这边。好,我们把这个 back 这个呢先给它删掉,这个文件夹是不要的,呃,要一个就可以了,就不用那么多。好,这是第一步。然后接下来我们再创建一个 altput 吧,就让这个 呃目录结构,呃是一个正常的状态,就现在这个折行呢,不是很清楚。好,加上一个奥特普特。 ok, 那现在我们的结构呢,就是英普特里面就是我们的素材图片啊,都在这个里面。然后奥特普特呢是我们中途输出的一些内容 啊。接下来我们需要做的事呢,就是来新建一个文件夹。呃,因为我们这个项目呢,在前期需要做的准备工作比较多,所以说我们呃创建一个预处理的文件夹来做这个前置的一些呃数据整理的工作。好,我们在这边来新建一个 process, 呃,干脆把下面文件也创建出来吧,就是 process 下面的 o c r 点 p y 这样一个文件。 ok, 那有了这个文件之后呢,我们接下来看一下它里面要做的事情。嗯, 首先呢咱们需要从拍的 ocr 里面去引入这个拍的 ocr, 对吧?呃,这两个其实导入这一个就可以了,就正常使用的话呢,导入这个内就可以了。 呃,但是这个地方我们为什么要导入两个呢?就是因为我们在使用这个拍的 ocr 的时候呢,他会有很多中间第八个的内容输出啊,这样的话我们的整个的面板里面呢,就会特别乱。好,所以说我把这个第八个的内容给他屏蔽掉了,然后屏蔽的级别呢?是这个第八个这种输出内容。 好,这是拍的 osr 的这一个导入。然后下面呢是 pandas, 这个就不说了, global 呢?是读取某一类文件,对吧?我们需要用它。好,接下来是 os, 这个是我们后面有一个层级关系,需要用它来处理。嗯,再往下是 c v, 这个时候我们去写文件的时候需要用到它。 呃,大家看到前面这个图片里面有一些红框,那这些红框的生成呢?咱们就需要借助这个 cv 啊,这样一个库去实现。 好。下面这个 tqdm 呢,这个是,呃,显示精度条啊,就是我们知道他已经处理到第几条了啊?就这样一个功能,然后 login 这个呢,其实是为了屏蔽这个第八个报错信息的。 好,那这一块内容其实很简单,我们就只是引入一个模块,我们把它复制过来,然后放到我的账本当中。 ocr 这边这个文件打开。哎,这个文件为什么点不开呢? 好像是这个边线有点问题,那这样吧,我们把这个文件夹先给他删掉,然后再来从头衔接一下吧。 css, 这是文件夹,然后我们在下面新建一个文件叫做 ocr, 点 py, ok, 然后把我们的代码呢粘进去,这个是模块导入的一个过程,这个没有任何逻辑,我们就不说了。然后接下来看一下正式的 ocr 识别的这块代码, 首先呢是他把信息识别出来,并且呢存储成一个 csv 的文件。呃,然后呢我们再导出一个带有识别框标记的这样一个图片 识别框,标记呢就是上面的这个图里面的这些红框,对吧?就正常的一个火车票呢,是没有这些红框的,但是呢我们可以把它标记出来看一下。呃,他识别的这个内容是哪些?是一块,比如说我们识别出的这个身份证号和这个名字啊,他是不是同一个尸体,这样的话我们就可以画出这个红框, 之后呢就可以清楚看到这一块呢,他把它识别成了一个整体,对吧?就是这个意思。好,那这一块的话我们先看前面这一部分,就是先看内容识别存储成 csv 文件的这一部分。 呃,这一块呢其实比较简单,我们首先实力化这个 ocr, 呃,同时呢这个内后面是要重复调音的,所以说我们在 it 里面去实力化它。 好,那识听话之后呢,我们下面是看方法里面传入三个参数,这三个参数呢依次表示原始的文件名,然后输出的,呃,这个文件路径,注意这个地方呢,我们输出的文件路径表示的是识别之后的这个 csv 文件的一个路径, 然后 mark 这个呢是我们输出的这个带红框的图片的一个逻辑。好,这是三个参数,同 是呢,后面这个参数呢是选填的,如果不填的话呢,就表示我们不想输出这个带红框的图片,对吧?就这个中间调试呢,可能需要,但是后面去跑模型呢,其实用不到他,所以说这个参数呢,我们可以传一个难值,对吧?也是可以的。 ok, 这是参数这一块,然后接下来我们看文字识别,文字识别这个地方其实很简单,我们就只需要调用呃,拍到 ocr 里面的 ocr 这样一个方法,就识别这个图片内容。 嗯,同时后面有个参数,这个参数呢是,呃表示我们图片有没有旋转啊?那正常的来说,我们这个图片是正向的,对吧?就是大家看到, 呃,比如说这个图片就是一个正常的图片,它没有翻转啊,没有这种倾斜的这种处理。所以说这一块呢,我们就直接传一个 force, 它的速度呢会比较快一点。好,那这是识别这一块,然后识别完之后呢,会得到 一组信息。嗯,那这样吧,我们先把这一块呢运行看一下,看它返回内容是什么。好,我们站到这边啊,在这个位置 把这个图片关掉,然后我们回到 o c r 这个文件,然后粘进去。 ok, 这就是咱们这个内的定义,然后接下来我们做一个判断,如果说 name 等于 me, 定一个入口方法,然后我们在里面去时令画它 o c r 等于 o c r 这个类。 好,之后我们需要调用 scan 这个方法,对吧?就是识别这个图片。好,我们直接用 o c r 点 scan。 嗯,然后呢,咱们需要有两 个必传参数,两个必传参数的话,我们就先传第一个吧,就找一张图片,然后先做一个识别。这个奥特普特呢,是一会转存 csv 文件的时候才会用到我们这个地方可以先传一个烂纸,做一个站位。 好,那这但是前面的这个图片路径我们需要注意一下,图片的话是在呃 process, 需要先上去一层,对吧?进这个音谱的,然后再进。呃,比如说我们就看翠里面的第一张图片吧。 好,就是这张图片,嗯,这张图片好像比较模糊,对吧?比较模糊,我们看一下他的识别效果怎么样吧。 好,回到这边我们填一下这个路径,先上一层吧,上一层再进阴铺的,然后找到 amages 里面的寸,好 找第一张图片, ok, 就是他。好,在这 print 一下这个音符, ok, 嗯,这个地方有一段警告,警告是说这个库要被,要被丢弃了,这个没关系啊。 ok, 那现在呢,就识别完了,识别完之后我们可以大概看一下这个识别的结果, 这个层级好像很深啊层级好像很深,我们先看这个吧,二维的列表就是这一段,这一段呢其实表示我们呃识别的这个内容他所在的一个位置, 呃,这几个位置呢,分别代表的是这个点呢?是左上角的位置,左上角位置呢是一七零五七六啊,就是我们图片 当中的。呃,把这个图片打开吧,我们对照看一下。好,这个,呃,第一项呢,应该是检票口这个位置,检票口六 b 啊,这样一个内容,这个内容呢在这好,在这, 那前面的这个参数呢,代表的意思就是一七零五七六,这个位置呢,应该是左上角的这个点啊,就是这个位置 啊,这个位置的坐标,然后二零九四七六啊,这个应该是横向的,对吧?就是他们的纵坐标是一样的,所以说这个点呢,应该是他,应该是他,然后接下来是二零九四一六九点零, 呃,二零九四,那说明跟这个点的横坐标是一样的,然后纵坐标呢比他大,所以说应该是这个点啊,这个点,然后最后呢是一七零五 一六九,应该这个点。好,所以说我们根据 ocr 这个地方识别出的结果呢,就可以看出来。呃,这个内容它所在的位置呢,就是这样四个点包裹的这样一个一小块的位置吧,啊,这个就是我们这个内容所在的一个位置信息。 呃,同时呢大家注意到这四个点呢,其实有很多重复的信息,比如说,呃,这两个点,这两个点他们的纵坐标是一样的, 然后这两个呢他们的横坐标是一样的吧。好,所以说我们其实这四个点里面只需要知道两个点的信息就能够决定。呃,这个框所在的一个位置,那这两个点我们一般选择的是, 呃,左上角的这个点和右下角的这个点啊,这两个点的位置信息知道之后呢,我们整体的这个框,呃这个位置也就定了吧,那这个也是我们后面要保留的信息, 就保留左上角和右下角的这个,呃位置的一个信息。好,那这是前面的,呃第一个参数啊,表示的是我们识别出的这个内容所在的一个位置信息, 然后后面这个呢是一个原组类型啊,是一个原组类型,前面这个内容呢是,呃识别出的文字,对吧?然后后面的零点九几呢,应该是一个他对这个信息识别的这个信息的一个把握度,或者说知心度啊,这样一个概念,这个也可以理解为是一个概率值,对吧? 好,那这就是我们路线识别完之后返回的一个结果,重要的内容呢就是前面的坐标点和识别出的这个文字信息吧。好,那这一块处理完之后呢,我们接下来,呃还是回到我们的简易当中啊,看一下下面的逻辑好了。下面的处理过程呢,其实比较简单,我们刚才已经 大概给大家分析过了。呃,我们虽然说欧三识别出的是四个点的坐标,但是我们只需要知道其中的两个点就可以了,所以说我们在下面保存信息的时候呢,呃就只需要保存我们需要的两项,对吧?需要的两项, 呃需要内容呢,分别是左上角这个点的坐标,可右下角这个点的坐标以及这个文本的内容。 好,那有了这样一个 defirm 之后呢,我们就可以呃读取我们刚才音符里面内容吧,那音符里面呢,它是一项一项返回的,也就是说它是一个大的, 呃,列表,大的列表呢?注意一下这个层数比较多啊,我们应应该是从这开始到这结束是第一个内容,对吧?第一项的内容是检票口的这个内容,然后第二个呢是三六 g, 应该是这个就是车票的一个编号, 对吧?这是第二项的内容。好,那这样大概看一眼呢,我们这个 o 三识别的。呃,效果呢还是比较好的,包括下面的文字,这个都比较清晰,对吧? 好,那说明百度这个 osi 识别的库呢,还是挺好用的。好,那接下来我们要做的事情呢,就是循环这个音符的内容,就是一项一项拿出来。呃,之后呢,我们去取这个里面的信息的时候,大家需要注意,我们刚才也大概看了吧,他的层级比较深。 好,所以说我们在解这个内容的时候呢,大家需要注意一下。呃,其实总共这个里面,大家看到刚才是一个四层的类似的,然后我们解的时候呢,是 应该是三层,对吧?应该解外面这一层,然后里面呢应该是一个三层的结构,然后我们这边大家看到是用一个圆组的形式接收的,所以说这边呢应该外面省略了一个括号啊, 加上这一层括号之后呢,大家数一下,应该是一二三三层,对吧?刚好跟我们这个是一样的。好,所以说这个层级结构大家需要注意一下。 ok, 那我们知道这个成绩结构之后呢,里面的内容就很简单了,首先第一个啊,第一项内容呢,应该是一个位置信息,位置信息里面呢,我们需要的其实只有两项,哎,这个地方我把它挡住了,应该是这样子, 这个是第一项,第一项表示左上角的位置,然后第二个呢是不要的,那就是右上角的这个位置我们不要,要的是这个 和这个,对吧?然后这两个我们是不要的,我们只需要知道这两个信息就可以了。好,那这个分辨命名为 x 一, y 一, x 二 y 二之后呢,再来个 test, test 的这个呢是我们的文本内容,最后一项呢是一个概率值,这个我们也是不要的。 好,那剪完之后呢,我们接下来把这个数据呢就可以放到我们的 disaffirm 当中,对吧? disaffirm 呢,我们刚好要的是这样五项内容,好把它依次做一个对应。呃,同时呢,这个地方大家需要注意一下我们返回的这个数值,它的类型我们会来看一眼啊。 呃,大家看到返回的这个内容呢,它其实是一个浮点型的七六六点零,然后八十三点零 啊,就是一个负点形的。但是后面呢,我们在做 c v 的一个处理的时候,就是把这个呃红光画出来的时候呢,这个地方要求是一个整数,所以说我们在写到这个 distrim 之前,把这个数据类型呢给它转一下,转成一个硬的类型, 再加上我们的文本内容。那这样处理完之后呢,我们这个相当于是一个大的,就是 x e y e x 加上 test 这样一个大的类似的,里面是五项内容,那这五项内容刚好跟我们 defirm 里面的这个内容是一对一的,对吧?所以说我们可以直接复制给 nog i 啊,这样一个纸。好,那这一块处理完之后呢,就可以把它保存到我们的 csv 文件里面了。 ok, 那我们把这一块呢给他拿过来。呃,后面的标记呢?我们一块来说。好,先回到这边,在这边来创建一个 death friend。 呃,保存之前呢,我们先看一下吧,先看一下这个台风之后断起来。 ok, 那现在呢,咱们看到这个输出结果呢,就是一个 defirm 的。 呃,然后内容呢是 x e y e x r y 二以及这个 test 文本。嗯,那现在呢,我们就可以清楚的看到它识别的内容就是这些,对吧?呃,基本上还是比较靠谱的啊,比较靠谱的,这个里面也没有什么乱七八糟的文字的内容。 好,那现在呢,咱们的文本内容和它所在的位置信息我们已经呃处理完了。然后接下来呢就是把它保存到文件里面。 呃,和我们生成这个标记的文件就是打上一个红框。这一块呢,其实很简单。呃,但是呢咱们设计到后面还有。呃打标签的一个问题啊,所以说这节课如果说咱们一起讲了,时间比较长。呃,所以呢,我们就先在这个地方断一下。呃,我们下节课呢再来给大家介绍后面的内容。 好的,那这节课呢,咱们就先讲这么多,感谢大家收看本科视频教程,我们下节课再见。


啊,今天感冒了,那个嗓子有点哑,然后呢头也晕晕的,一天了啊,虽然状态不太好,但是这个心情还是很好的,因为我今天将一个重要的东西啊,把它升级了。 嗯,是什么东西呢?那就听我娓娓道来吧。就是大家都知道我之前不是搞了一段时间的那个嗯潘的那个做深度学习吗?然后来不成了吗?也也也做出来了,然后那个 做出来了,但是就是只是只是。嗯,从零到一的一个过程,然后一呢还要迭代。嗯,这个迭代的过程 其实从零到一日还行,用了点时间的,然后来发现那个东西还是有点问题的。是什么问题呢?其实嗯是什么样的问题啊?嗯,主要就是他的 那个运行时间,可以大家可以看到,就是我们之前用用我之前的程序测试这个东西的时候啊, 嗯,他用时一点五一点五秒,但是这个一点五秒其实是将模型的加载和模型的预测分离开了,如果算成加载模型的时间可能会更长。这个一点五五秒呢,虽然可以用, 但是呢却不能落地,用在项目中,因为这个时间实在是太长了,只能做 测试给大家看一下。然后呢?但是他不能落地,不能实际的在项目中不能用这样的。嗯,这样会被说的。然后呢,我们就一直想把它升级,因为最近也没有时间去升级,然后呢 今天抽了一天时间把这个呃这个程序啊又给升级了一下。嗯, 在此之前呢,我一定要感谢我的技术朋友对我的这个嗯技术指导啊。嗯,因为我看过我朋友他们,他们说他这个时间其实是这个运行时间呢,其实可以 做的很很短的这个识别,嗯,一点五,一点五秒,其实不被接受的,那零点零零九,这个我觉得他们这个还是觉得可以的。 这样如果我把它弄到把这个测试时间变到零点零零九秒或者零点零一几秒,那其实在运行过程中是可以被接受的。那我们先来看一下运行效果啊,看一下啊, 那首先呢再加点模型,哎,然后呢就加点这个时间,这个运行时间呢就变成零点一几或者零点零九,那这个,嗯,我觉得这个还是可可可可接受的 啊。那现在来给大家说一下我是怎么升级的这个东西啊?那就要说到这个潘达了,就是拍叉了,那我们之前用那个方式呢?其实是,呃, 其实是这个,是这个,这个这个 panda 的 cpu 版本 panda 的 cpu 版本,这个 panda 的 cpu 版本,然后呢它因为它只使用了 cpu 嘛,所以说它这个速度就变得非常慢,一点几秒啊, 后来,嗯,我们才想到通过这个报错呀,才想到是要用到这批油做加速。 然后呢在 gpu 做加速的时候也遇到了很多不懂的地方啊。嗯,就不光是倒了一个这个,这个 panda gpu 就可以用了,因为我们发现的这个事情是这样的,就是这个 panda 的 panda 的这个 g p u 啊,是找不到对应的版本的,你看我们这个下边, 他是有二点几的版本,二点一点三的版本,但这个版本不能用,你知道吗?这个版本我也下了,我下的其实是潘的 gpu 二点一三这个版本,但是放进去以后呢,他就提示报错了,然后呢?嗯,还好我们根据报错原因呢,找到这个原因, 然后呢我们就重新下载了一个这个 panda 的这个版本呢, 大家可以看到,嗯,是二点一点三点 post 幺幺二这个版本,这个版本,嗯是找不到的,在这个版本号里面, 那我们也是通过别的方法找到了这个这个版这个 gpu 版本,然后把它放进去把程序改了改,然后呢一运行呢就把这个 gpu 这个 速度就提,就把这个处理时间速度就提上来了啊,变成零点零一六秒了。那这样话我们就觉得这个提速就基本上算完成了,但是还有还有更好的方式做做提速啊。 我们觉得这个目前这个方式呢,嗯,基本上就变成二点零版本了,就可以呃,部署到我的程序里面去应用了。 那这个今天这一天虽然状态不太好,但是最后把这个搞成了,嗯,还是有点小激动的,那这个特此跟大家分享一下啊。

呃,大家好,今天那介绍一下如何在这个温度的上面啊,使用 p y exter 打包这个 pando c 二,然后这个呢是呃这个官方的最简单的一个势力啊,大家可以看到我们点击这个运行,然后这个就是一个 a p p 啊这样的一个这个代码,然后呢我们可以把这个 呃代码呢给检测出来,大家看这是文本检测框出来的,然后这个呢就是他检测的一个结果啊,我给大家演示了,我主要是 给大家演示啊,所以说这个地方呢这个代码就是这样的,这个代码呢就是这么多啊,然后我们回到我们的文件夹,大家看到我们文件夹下面呢,其实啊这个是没啥用的啊,这个也是没啥用的,删掉啊,然后我们就进行开始打包啊,开始打包, 他这个打呃就是他漂颜色的打包呢,最好就是要要这个, 呃漂音是多少打包呢?其实,呃这个打包这个拍到 ocr 呢,其实也很简单啊,但是 建议下大家就是打包 cpu 版的,因为你这个扩大的话,感觉就是第一个就是比较大,第二个就是,呃可能就是有会有问题啊,所以说,嗯,打包 cpu 可能要稍微简单一点啊, gpu 的话就稍微困难一点啊。呃, 我们啊我们这个演示是使用的这个 gpu 啊,跟他演示的,然后这个看一下,我们打包一下,他这个打包是需要一段时间的啊,喷头,这样呢打包的话就不不推荐大家用这个单文件版打包,因为他这个体积非常大,那么他大了以后 他打包。第一个就是他打包以后他体积会非常大啊,体积大以后大家可以就是试一下,就体积,比如说他超过一个 g 的话,你你打 打开这个 ese 的话,他会非常慢,他可能要几分钟,基本上就是呃,他几分钟的原因是根本原因就是因为他这个 ese, 他会在这个临时部去释放一些文件,会导致他非非常慢啊,所以说不建议大家把它打把打打包成单文件的 ese 啊, 就这样打包成这样的,这样的一个就是一个这样的就可以了。 它打包的时候其实这个喷头 ocr, 它打包的时候因为它有一些依蜡,就是喷头 ocr, 他其实是依赖于拍到这个框架的,那拍到他里面好多东西呢?是有好多东西的,但是拍到里面这个好多东西啊,其实在喷的欧层里面他其实没有什么用啊,但是他这个漂颜色打包的时候他也考虑进去了,所以他会引发各种各样的错误, 所以有时候啊打包不成功,我们还是需要改他的代码才行,比如说去掉一些无关的这种东西啊,啊,比如说我遇到这个错误,就是他这个还加载一些这个得瑟的一些东西啊,就是他是加载一些训练的一些东西,但其实他是没有必要去加载这些训练的一些东西的, 所以把它去掉的话,那么它打包就会非常的顺顺畅。好,大家可以看到这个 p r 因素度呢,马上就要打包成功了,已经打包成功了,我们看一下这就是它它打包后,打打包后的这个东西啊, 但是他打包的东西大家可以看到这个,嗯,他一般都不会成功啊,一般不会成功。 好,我们这个基本上我们不会成功的话,我们基本上也对,我们会写写了一个软件啊,就会让他自动的把一些依赖给他弄进去。啊, 啊,我这电脑卡住了,卡住了,重新再打开一下 啊,我们选中它,然后呢我们这用的这个是这个 pido 这样的一个, 我们使用的是这个拍到这样的一个呃,环境去打包的,所以我们在这里面去找依赖,把他依赖全部给他找,找上来。好,大家可以看到这个他自动的去呃,找一些依赖啊,然后把这个依赖呢放到我们的这个 这里面去啊,好,我们重新再运行一下看看。 好,大家可以看到啊,这个就是啊,我们这种软件自动去,因为他这个依赖比较大。那么这样呢,你看大家可以看到我们这个就顺着成功了,就是把这个 把这个就是顺利的就是进行打包成功了,大家看到这个就是我们打包的一些结果来看看这个, ok, 这样就成功了,所以说因为大家可以看到整个文件夹,你看非常大,你看一点八五个 gb 啊,那你要打包成这个 ese 的话,基本上就是会,就是你再次用 ese 打开的话,它就会非常慢,所以这里面 pados 一般是不能够打包成单文件的, 因为你打包成大文件以后,他打开要几分钟,那你肯定受不了,这个基本上是忍了,你基本上就不行了,所以说不推荐大家。如果说你这样打包的话,打包成这个文件夹里面基本上都是瞬间秒开的,你看这个窗口瞬间就秒开掉了。 好,这个就就是这样啊,就打包的话,其实还是啊,没有一帆风顺的,没有一帆风顺的,所以需要大家去耐心的分析一下啊,他打包错误的原因啊,然后我们对对这个错误进行修正就可以了,这样呢,就实现了一个简单的 p r e 做打包啊。好,我们的讲解的到此结束。
![[2.7版本支持繁体多语言]按键精灵本地和服务器搭建paddleocr免字库文字识别和对接的方法#小德学院 #按键精灵 #按键精灵小德 #按键精灵小德学院 #按键精灵教程 #按键精灵新手教程 #按键精灵手机版 #按键精灵手机助手 #按键精灵新手入门 #按键精灵学习 #按键精灵安卓版 #按键精灵脚本 #按键精灵云统计 #传奇 #按键精灵传奇 #A星寻路 #a星寻路算法 #传奇A星寻路 #paddle #paddleOCR #免字库 #按键精灵免字库 #按键精灵免字库识别](https://p3-pc-sign.douyinpic.com/image-cut-tos-priv/b9a6fd58e12f70291be1c9e2cc645cd6~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2091492000&x-signature=M%2FGCaAkSuSzpjf4UTIEeISqR8pM%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=20260414105910F8C571B7F015F63296C7)
好啊,大家好,我是小邓,然后这节课我们说一下另外一个啊,就是呃, panda o z r 的这个二点七版本啊,之前我们说的啊,就是二点二版本的啊,那那个已经上传到全文件里面,然后这个二点七版本是全友给的啊,全友说那个论坛里面啊,精英论坛里面他那个已经更新到二点七了啊,所以说啊,就 重新做一个啊,重新做那个使用的一个命令,然后这个免费插件和收费插件啊,就是就我们 vip 插件里面都有的啊,我们先先导导导入一下再插件啊。 好,免费版里面我们就按免费版里面这个说一下啊,反正使用方法都是一样的。好,之前我们做的是免智库初始化啊,他是通用的啊,这个初始化啊,我们是通用的, 然后我们先把这个命令啊拿出来,开头我们说实话一下啊,后面就可以直接用了,然后地址我们之前讲过了啊,就在我们这里打开网络共享中心,对吧?然后不管是无线网还是有线的,都是点开,然后有个详细信息啊,就这个 ipv 四的一个地址,幺九二点幺六八点零点幺零三啊,我这个是这样的,然后你自己的呢?就根据你自己的来, 这个好像有有一点点改变啊,我之前是幺零二,现在变成幺零三了啊,呃,旋转方向和模糊匹配旋转方向,现在我们在主页,我们就不旋转啊,零 好了,出手法。以后我们看啊,这边有两个命令,对吧?一个带 s, 一个不带 s 啊,三个命令啊,三个命令,一个带 s, 一个不带 s, 然后使用方法都一样的啊,就是对对接的这个不一样,我们之前是对接二点二的啊,然后它里面内容是不一样的。好,这个二点七的同样也是打开这个文件啊,这个 e x e 啊,结尾的啊,这个啊, padoc 啊, w b 啊, a p i 这个啊,其他的不用管,然后我们双击打开啊,然后 出来一个地址,看到没有?我们有发现这个地址跟之前是不一样啊,比之前多。然后这个结尾啊,之前结尾是 ocr 杠什么什么什么东西,对吧?现在变成直接是 ocr, 一二三四五六七。嗯嗯,然后现在我好像是对接的第七个吧啊,好像对接是第七个, 好了,我们来试一下啊,这边我们打开就可以放的啊,或者最小化啊,都可以。然后接下来接下来我们使用的话跟原来的方式啊是一模一样的啊。呃,可以返回文本啊,只返回文本或者返回所有的内容,或者返回他的一个坐标, 那么我们来返回所有内容的啊,然后啊命令,哎哎啊,命令说明我还没复制过啊,其实都一样的啊,我们看这个不带 s 的,好吧, 好,返回所有内容也是给一个范围的吧。啊,那么我们就这里啊,直接返回给他一个范围,然后我们抓抓啊,先截一下屏 啊,比如说这个输入框里面呢,我们先给他一个范围对吧?啊?这么长的一个范围,好,输入框的一个范围,然后给到他,然后用一个变量啊,来储存一下吧,返回值,对吧?返回值等于我们识别的啊,返回的所有内容,那么我们就可以对他进行一个输出啊,用我们那个自带的啊, 类型判断的啊,输出所有内容的好,输出这个返回值,看他是什么东西啊?好,我们直接调试现在他输入框里面是什么搜索游戏或应用啊? 哦,这个忘记改了,是幺零三啊,我这边已经变成幺零三了。调试好现在他返回的内容,我们来看一下啊,返回的内容是一个禁止表,对吧? 个数只有一个啊,所以说它返回的是什么?是一个数数, 我看一下啊,返回的是什么数?二位数组啊?还是什么数组集合啊?那就是一个二位数组啊,每个数组里面单独又有一个东西啊,对吧? 好,他现在里面只有一个东西啊,所以说对吧?啊?他只有这么一个东西,这里面的东西我们来看一下第一个成员啊,是这个名字,就是这个搜索游戏或应用,对吧?然后第二个呢是他的一个坐标 中心坐标,然后这个就是他的一个范围,对吧?然后我们是通过范围来计算他的中心坐标的啊,比如说这个搜索游戏和应用啊,他是对的,对吧?好,那么我们给他改变一下啊,我们随便输入一下其他的文字啊,随便输啊,然后我们再识别调试 来,他现在输出出来啊,这个内容是什么?你看一下第三方格瑞特啊,对吧?跟我们这边是一模一样的,对吧?好,那么我们就现在就直接返回文本的了啊,用这个命令啊,直接返回文本,对不对?好, 然后我们给它拼接一下,比如说,呃,一二三,嗯, a b c 小写, a, b c 大写,然后中文,哎,我们再混合一下啊,看它行不行,然后再加一个什么问号,一个叹号啊,这样行不行啊?我们试一下 好内容啊,我们看一下它的内容是什么?一二三 a、 b、 c 大写,哎,它小写大写都分开了啊,都,都识别出来了,看到没有啊?但是故事问号、叹号,但是它这个问号和叹号啊,我打的是英文的啊,它识别出来返回的是中文的啊,这个问题不大,对吧? 好,然后接下来有一个重点啊,我们来看一下这个东西,它是可以滑动的啊,我们往上滑来往上滑,看到有一个检测模型啊,目录还有识别模型,目录还有识别字典文件,看到没有?他这个是默认的啊,我们我, 我们不管他,他就是默认的一个路径。看到没有?然后如果我们想切换的话怎么弄?这里有一个调用测试,看到没有哎? e e x e 啊,一个文件我们双击打开,然后在这个里面呢?呃, 我们选择一个空白的啊,然后这个里面他这有个检测啊,看到没有?检测模型他有中文哎。 v 三 v 四 v 四高精度啊,还有一个多语言的,还有一个英文检测,看到没有?然后这边语言我们可以选择有很多了哎,除了刚刚我们的 v 三 v 四 v 四高精度,然后 英文 v 四啊,英文 v 四对应的是什么?这个英文检测然后多语言呢?他就对应了,有好多啊,一个是繁体,看到没有?中文繁体,卡纳达文,什么拉丁文、日文什么乱七八糟的都有啊,韩文,对吧? 那我们试一下中文繁体啊,然后我们可以切换啊,怎么给它切换?就是这边改成多语言,然后这边改成中文繁体,嗯,然后这个 cpu 什么什么加速,什么旋转这种看你自己啊,我不知道有没有效啊。然后我们这里有个启动切换,看到没有?来点一下这个提示呢?我们点否或者点四都可以啊。点否,然后他就会重新打开,然后我们往上滑动一下,看他这个模型变了, 多模型,简称模型,多元的中文繁体,看到没有?现在他就可以识别繁体了,哎,我们试一下啊,我们在这个里面输入一些繁体字,比如说啊,繁体字怎么打呀?这里能不能切换哎。嗯,这有个简繁切换切换成繁体, ok? 哎。为为什么 好?现在我们打了这么多字,他有几个繁体?一个,两个,三个啊,三个繁体啊,为什么?为什么的为还有么?还有学习的学,对吧?再打两个字啊,学习好这么长了啊都。他里面是有繁体的,我们试一下行不行?我也没测试啊。那我们调试一下啊,看他返回什么 好了。现在我们把它打开啊,然后哎粘贴出来他的内容,看内容他第一个字好像识别错了,第一个应该是为什么为啊,他识别成了有意的意,然后什么晓得学院学习,哎,后面都是对的,对吧?啊?后面都是对的,是不?我范围不行啊, 范围给他幺三九,左边给他幺三九,大一点幺三九,然后我们再重新试一下, 好还是还还是啊?不行,他第一个字识别错了,对吧?啊?那不管他,反正我们知道他可以识别繁体字了,是吧?那比如说我们第一个字往后推一推,是不是因为,哎,怎么回事啊?加空格。好,我们加两个空格往后推一推看他还行不行啊。 好,这不是空格的原因啊他还是第一个字识别成一。那不管他了啊。好的,现在我们识别是可以识别的啊然后至于识别出来准不准啊。那就是不是我的问题啊是他们这边的问题啊。好,然后我们还可以切换其他的啊比如说我们切换成 呃日文啊我们切换一下试试啊。好,我们往上滑动一下看到他有日文看到没哎。日文的然后这里我们打一些我也不知道怎么输啊然后我们就通过这个符号啊有个符号大全里面他是有一些日文字符的我们随便输一下啊随便点击哎。什么鬼 这么多啊我的天呐。啊那我们在这里输啊在这里输我们先随便点几个然后粘贴进去对吧。 ok, 这么多了啊然后复制这个不知道闹什么情绪啊。 之前开了有一个这个点按操作啊给他关了。好现在有一堆日文看看然后我们把这个哎删掉然后调试一下看他能不能识别出来啊 好了我们复制出来他识别的结果啊总共十个字符我们对一下啊。呃看着好像没问题啊我对了一下啊都是一样的啊跟这边是一样。 那比如说我们能不能全选啊。选不了哎他这边我对了一下是一模一样的对吧。好,说明我们多语言也是支持的对吧。韩文要不要试呢。那就不要了吧啊先切一下啊。 好,现在切成韩文了啊。切成韩文然后哦韩文这里面不知道有没有输入法里面啊符号大全啊俄文韩文哎有的啊有的。嗯就这算了我还是在这边啊在这边随便按几个不行啊他不行。我的天他是问号啊 在这里啊在这里我们随便按几个好复制 然后粘贴。那他出来了是这种啊形式的一个韩文来让我们调试一下看看啊啊识别应该是可以识别的但是我们按键精灵好像不支持啊。他是不支持的你看他识别出来是问号啊他显示不出来啊啊所以说这个没有办法啊。 那他识别出来是一个问号啊是因为不显示的原因啊 好了那么这个东西呢我们就说这么多啊。呃我们之前那个二点二的应该也是可以切换这个模型的啊。呃我不知道能他里面有没有模型我忘记看了反正以后我们就用这个二点七的好了啊二点七的总归来说比那个应该好一点啊然后比如说我们他不是有一个什么呃 v 四的高精度的对吧那我们就可以切换这个高精度的以后来使用那就可以了对吧 那这个是高精度。 嗯有点卡我开了 cpu 加速啊 啊不要开的啊我这个配置可能有点低啊所以说开了 cpu 加速有点卡是高精度卡还是什么卡。好了这个东西我们可以关掉啊但是我们这个界面啊必须要留着啊不留的话他他就连不上啊啊现在是高精度的啊高精度的不知道怎么样啊随便打几个 um 咳咳不会吧 那切了高精度他反而识别不出来了所以说这个东西我们也是要看的啊如果我们自己本身他的这个高精度的他不支持,哎,他怎么变成 v 四了 啊?默认的是 v 四,是不高精度有问题,我们切切一下 v 四的啊,不要高精度。 好,现在我们再来试一下。好,现在出来了,对吧?哎,应该是那个模板的这个,这个,这个高精度可能有问题啊,所以说我们直接用 v 四就好了啊,检测的模型啊,高精度,我这个不知道为什么啊,高精度没有返回制 好,那么这个东西啊,免字库也没什么东西啊,就是跟我们之前二零二使用方法一样,但是他内部有些东西变了,所以说我就又封装了一个啊在里面,呃,改了改了,但是他整个的使用方法啊,跟我们之前二零二是一模一样的啊,所以说这里就不带多说了。 好了,那么这节课我们就到这里啊,然后就是多了一个什么我们可以切换的模型,对吧?哎,之前有很多同学他要识别什么繁体啊,所以说这个我们切换一下他的模型啊就好了。


这个是 ocr, ocr 拍摄,调用 ocr 进行位置识别,并存储到 flaggress 数据库。 然后这是他的基本的一个流程。 嗯,这个 拍成掉。这个叫 p d d l u c 啊。它搭建环境搭建。先下这个八零三。 呃。然后他有快速开始。 she just。 这里是他识别使用的代码。嗯, 呃,先起一下数据库 progress pretty cool when they look at it 连接数据口。 这里是他连接 progress 数据库的信息。这是他的存储模型。然后这里是识别识别。然后病例 给你封装成小魔斗,然后存出到这个魔斗石列表里面。 这里的话是宾利宾利 model 十。然后存储存储到 osco s 零。嗯, 这是又用 flask 勾进的一个 api。 启动, 用 postman 接口调测试发射。 识别成功。一共用了十九秒。看一下手机库里的信息, 刷新一下。

odo up 百度飞奖 ocr 图像文字识别西门子产品海报光学字符识别案例 o d i m 聊天页面消息图片附件上传 计算机技术与软件专业技术资格证书。消息发送完毕,等待 padol c 二识别应答 非奖 ai 机器人回复文本识别结果消息。