当前位置: 首页 > 工具软件 > tota11y > 使用案例 >

FOTs 实战 cv2.error: OpenCV() /io/opencv/modules/imgproc/src/convhull.cpp:137: error: (-215) tota

王岳
2023-12-01

这里实战是大佬的python3.5版本 dev分支

https://github.com/Pay20Y/FOTS_TF/tree/dev

git clone branch -dev https://github.com/Pay20Y/FOTS_TF 执行这个并没有clone 成功分支

使用download 下载了当前分支

 

环境有安装需求txt。

坑一 数据准备

训练 准备数据后按照readme 进行训练   

坐标划分是 左上、右上、右下、左下,我之前数据是 左上 与右下 为第一个和最后一个数据 对角线为max与min

解决方式

更改 右下与左下顺序

坑二 预测时cv2.error: OpenCV() /io/opencv/modules/imgproc/src/convhull.cpp:137: error: (-215) tota

解决方式

函数的输入需要是np.float32型的数据,更改输入时

np.array(,dtype=np.float32)

坑三 预测时 运行train_test.py 出现 进入 文件夹 编译 未找到头文件 #incldue<Python3> g++:error :unrecognized command line option ‘-fno-plt’以及 can’t compile lanms

解决方式

lanms是作者建立的一个C函数的库(描述可能有错误,大概是这个意思),在train_test.py中import lanms,使用lanms来调整boxs,作者们可能是考虑到了编译问题等巴啦巴拉,在代码的上一行作者备注了使用python中自带的函数nms来解决相同的问题,据作者描述可能只是速度的问题。
直接将train_test.py文件中105行的boxes = lanms.merge_quadrangle_n9(boxes.astype(‘float32’), nms_thres)
换作boxes = nms_locality.nms_locality(boxes.astype(np.float64), nms_thres)
使用python函数库而不是lanms的函数库
同时备注掉import lanms。这样就不会出现编译错误又可以运行代码。

 

 类似资料: