RapidAI / RapidOcrNcnn

RapidOCR ncnn 推理
Apache License 2.0
48 stars 5 forks source link

demo里面的参数都是什么意思? #3

Closed xinsuinizhuan closed 2 years ago

xinsuinizhuan commented 2 years ago

demo里面检测输入参数: maxSideLen、boxScoreThresh,boxThresh,unClipRatio,doAngle,mostAngle都是啥意思?尤其是boxScoreThresh,boxThresh,有啥区别?

benjaminwan commented 2 years ago

参数代表的意义跟chineseocr-lite是一样的。

readme里有这些参数的说明:https://github.com/RapidOCR/RapidOCRNcnnCpp

这里再把readme的内容贴一遍 -d或--models: 模型所在文件夹路径,可以相对路径也可以绝对路径。 -1或--det: dbNet模型文件名(不含扩展名) -2或--cls: angleNet模型文件名(不含扩展名) -3或--rec: crnnNet模型文件名(不含扩展名) -4或--keys: keys.txt文件名(含扩展名) -i或--image: 目标图片路径,可以相对路径也可以绝对路径。 -t或--numThread: 线程数量。 -p或--padding: 图像预处理,在图片外周添加白边,用于提升识别率,文字框没有正确框住所有文字时,增加此值。 -s或--maxSideLen : 按图片最长边的长度,此值为0代表不缩放,例:1024,如果图片长边大于1024则把图像整体缩小到1024再进行图像分割计算,如果图片长边小于1024则不缩放,如果图片长边小于32,则缩放到32。 -b或--boxScoreThresh: 文字框置信度门限,文字框没有正确框住所有文字时,减小此值。 -u或--unClipRatio:单个文字框大小倍率,越大时单个文字框越大。此项与图片的大小相关,越大的图片此值应该越大。 -a或--doAngle:启用(1)/禁用(0) 文字方向检测,只有图片倒置的情况下(旋转90~270度的图片),才需要启用文字方向检测。 -A或--mostAngle:启用(1)/禁用(0) 角度投票(整张图片以最大可能文字方向来识别),当禁用文字方向检测时,此项也不起作用。 -h或--help:打印命令行帮助。 -G或--GPU:尝试使用gpu进行计算,-1(使用CPU)/0(使用GPU0)/1(使用GPU1)/...,GPU选择失败时,则使用CPU进行计算。

xinsuinizhuan commented 2 years ago

还有一个参数:boxThresh是什么意思? boxScoreThresh,boxThresh,有啥区别?

benjaminwan commented 2 years ago

boxThresh只在程序内部使用,没有作为参数提供,可以不需要更改。 boxScoreThresh这个是置信度门限值。 boxThresh这个只是中间运算步骤的一个门限值,大概是图片dbnet之后,把彩色图3通道转换为黑白1通道,文字所在区域转换成黑色的区域,白色区域就是不含文字的部分,这个参数用途是过滤掉太小的黑色区域,或者说是噪点。