在没有边界框过程的所有开销的情况下,是否可以使用任何文本检测机制来检测文本?
边界框是进行所有检测处理的结果,因此表示该过程的本质部分。如果您不在乎文本的位置,则可以随意忽略自己代码中的边界框。但是为了检测图像中是否有文本,算法(无论哪种类型)都必须检测文本中的文本。
如果您不关心结果,则链接文章中使用的DNN方法可能会过大。您总是可以尝试其他一些text detection algorithms并尝试对其进行概要分析,从而为您的应用程序找到计算成本更低的解决方案。永远会有权衡。
OpenCV使用神经网络来检测文本,该文本是.PB文件。我需要加载它才能使用nn。有什么办法可以将此文件嵌入.py文件中?这样可以避免有两个文件。其背后的想法是能够导入.py文件并将其用作库,而无需考虑.pb文件(这是检测文本的模型)。
是的,您可以将模型redux
文件的内容作为buffer object直接嵌入到Python代码中,然后使用alternate model loading mechanism从缓冲区读取模型:
.pb
您可以使用Unix retval = cv.dnn.readNetFromTensorflow(bufferModel[,bufferConfig])
命令将二进制文件转换为十六进制序列:
hexdump
产生如下输出:
hexdump -e '" " 8/1 "0x%02x," "\n"' your_training.pb
,然后将其粘贴到您的源文件中,并用以下符号包裹:
0x0a,0x35,0x0a,0x62,0x61,0x74,0x63,0x68,0x5f,0x73,0x69,0x7a,0x65,0x12,0x0b,
然后您可以将其传递给OpenCV:
bufferModel = bytearray([
0x0a,# ...
])
本文链接:https://www.f2er.com/2981417.html