labelme_json_to_dataset不能转换关键点的问题
labelme_json_to_dataset不能转换关键点的问题
如果json文件中有关键点,在使用labelme_json_to_dataset.exe时就会有如下错误:
UserWarning: This script is aimed to demonstrate how to convert the JSON file to a single image dataset, and not to handle
multiple JSON files to generate a real-use dataset.warnings.warn("This script is aimed to demonstrate how to convert the\n"
Traceback (most recent call last):File "E:\Anaconda3\lib\runpy.py", line 193, in _run_module_as_main"__main__", mod_spec)File "E:\Anaconda3\lib\runpy.py", line 85, in _run_codeexec(code, run_globals)File "E:\Anaconda3\Scripts\labelme_json_to_dataset.exe\__main__.py", line 9, in <module>File "E:\Anaconda3\lib\site-packages\labelme\cli\json_to_dataset.py", line 62, in mainlbl = utils.shapes_to_label(img.shape, data[‘shapes‘], label_name_to_value)File "E:\Anaconda3\lib\site-packages\labelme\utils\shape.py", line 35, in shapes_to_labelmask = polygons_to_mask(img_shape[:2], polygons)File "E:\Anaconda3\lib\site-packages\labelme\utils\shape.py", line 12, in polygons_to_maskPIL.ImageDraw.Draw(mask).polygon(xy=xy, outline=1, fill=1)File "E:\Anaconda3\lib\site-packages\PIL\ImageDraw.py", line 185, in polygonself.draw.draw_polygon(xy, fill, 1)
TypeError: coordinate list must contain at least 2 coordinates
解决办法是:
打开python目录下的…\Lib\site-packages\labelme\utils\shape.py
将第8行的polygons_to_mask函数改成如下:
1 def polygons_to_mask(img_shape, polygons):
2 mask = np.zeros(img_shape[:2], dtype=np.uint8)
3 mask = PIL.Image.fromarray(mask)
4 if len(polygons)==1:
5 polygons.append(polygons[0])
6 xy = list(map(tuple, polygons))
7 PIL.ImageDraw.Draw(mask).polygon(xy=xy, outline=1, fill=1)
8 mask = np.array(mask, dtype=bool)
9 return mask
labelme_json_to_dataset不能转换关键点的问题相关推荐
- android 英语时间格式转换,android 时间格式解析转换关键点
中文格式 "yyyy-MM-dd" SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd" ...
- PCL NARF关键点提取、SIFT关键点提取、Harris关键点提取
一.NARF关键点提取 1.背景 关键点也称为兴趣点,是通过定义检测标准来获取的具有稳定性.区别性的点集.从技术上来说,关键点的数量要比原始点云的数目少很多,与局部特征描述子结合在一起,组成关键点描述 ...
- 从图片到dataframe——语义分割数据集制作全流程
分享一下从原始图片,到标记图片,再到转换为python里的数据结构语义分割数据集制作全流程. 安装labelme labelme 是一个图形界面的图像标注软件,可以很方便地划分出多边形边界. 下面在w ...
- PRESTO SQL总结分享
1.常用SQL语法 1.1 字符substr(staff_leave_date,1,10) concat(string1, ..., stringN) → varchar--拼接多个字符串 lengt ...
- 一张图片换脸,三星AI最强换脸模型
一张图片换脸 Few-Shot Adversarial Learning of Realistic Neural Talking Head Models Github 地址:ht ...
- S如何边缘控制_驾考科目二侧方位停车、倒库与S弯道,上坡起步技巧及注意事项,意外应对方法...
有网友反映,侧方位和上坡也有问题的,我来补充一下我们(安徽怀宁)这里侧方位停车和上坡起步的操作步骤及注意事项吧 侧方位停车 1.定点停车 如图,定点停车要求对准1号胸口线,2号肩膀线,车身距离车子右侧 ...
- 创建自己的tusimple数据集格式
为了训练自己的车道线检测模型,由于tusimple数据集场景较为单一,因此自己标注了一个数据集 模型:lanenet 数据集格式:tusimple 标注工具:labelme 第一步:原始数据集标注 1 ...
- labelme标签批量转换,labelme_json_to_dataset
三行代码搞定labelme标注批量转换(labelme_json_to_dataset) 在labelme生成的json文件同级目录中新建一个bat文件,内容如下: @echo off for %%i ...
- 智能售餐系统通过重量转换按份售卖概要设计及业务关键点
项目介绍 以"推行中餐标准化 让传统中餐走遍全球"为使命,打造厨电产品系列,涵盖多种用餐场景,助力前厅后厨实现标准化出品.精细化运营.以复制大厨烹饪技艺为核心技术,以推行中餐标准化 ...
最新文章
- MySQL学习(十一)
- GPT-2:OpenAI的NLP商业化野望
- 周志华:严肃的研究者就不该去触碰强人工智能
- linux调用python函数,python脚本里执行linux命令的时候如何调用python的函数?
- pandas新建dataframe_pandas数据处理
- 【转】mysql 、oracle中char和varchar以及varchar2的区别
- c# combobox集合数据不显示_Excel也能玩转百万数据
- 实现拖拽上传文件的一款小控件——dropzone
- 18 TaskScheduler任务调度器抽象基类——Live555源码阅读(一)任务调度相关类
- 5 个用于在 Linux 终端中查找域名 IP 地址的命令
- pygame.error: video system not initialized的解决办法
- 计算机组成原理罗克露课后答案,计算机组成原理[完整版](罗克露)(全)原版教案.ppt...
- 打印程序在计算机上的应用程序,修复无法在计算机上运行的后台打印程序服务的操作步骤...
- SVG动画解释-学习笔记
- python hdf5_Python HDF5属性
- SMIL彩信MMS技术学习
- BitLocker是个什么东东?密钥丢了怎么办
- python 字符画
- 关于负载均衡点点技术总结
- windows注册表项配置客户端代理服务器