笔尖笔帽检测1:笔尖笔帽检测数据集(含下载链接)

笔尖笔帽检测1:笔尖笔帽检测数据集(含下载链接)

目录

笔尖笔帽检测1:笔尖笔帽检测数据集(含下载链接)

1. 前言

2. 手笔检测数据集

(1)Hand-voc1

(2)Hand-voc2

(3)Hand-voc3

(4)Hand-Pen-voc手笔检测数据集

(5)手笔目标框可视化效果

 3. 笔尖笔帽关键点检测数据集

(1)dataset-pen2

(2)笔尖笔帽关键点可视化效果

4. 数据集下载

5. 笔尖笔帽关键点检测(Python/C++/Android)

6.特别版: 笔尖指尖检测


1. 前言

目前在AI智慧教育领域,有一个比较火热的教育产品,即指尖点读或者笔尖点读功能,其核心算法就是通过深度学习的方法获得笔尖或者指尖的位置,在通过OCR识别文本,最后通过TTS(TextToSpeech)将文本转为语音;其中OCR和TTS算法都已经研究非常成熟了,而指尖或者笔尖检测的方法也有一些开源的项目可以参考实现。本项目将实现笔尖笔帽关键点检测算法,其中使用YOLOv5模型实现手部检测(手握着笔目标检测),使用HRNet,LiteHRNet和Mobilenet-v2模型实现笔尖笔帽关键点检测。项目分为数据标注,模型训练和Android部署等多个章节,本篇是项目《笔尖笔帽检测》系列文章之笔尖笔帽检测数据集说明;

项目收集了手笔检测数据集和笔尖笔帽关键点检测数据集:

  • 手笔检测数据集(Hand-Pen Detection Dataset):共收集了四个:Hand-voc1,Hand-voc2和Hand-voc3,Hand-Pen-voc手笔检测数据集总共约7万张图片;标注格式统一转换为VOC数据格式,手部目标框标注为hand,手握着笔的目标框标注为hand_pen,可用于深度学习手部目标检测模型算法开发
  • 笔尖笔帽关键点检测数据集(Pen-tip Keypoints Dataset):收集了1个数据集:dataset-pen2,标注了手握笔(hand_pen)的目标区域和笔的两端(笔尖和笔帽);数据集分为测试集Test和训练集Train,其中Test数据集有1075张图片,Train数据集有28603张图片;标注格式统一转换为COCO数据格式,可用于深度学习笔尖笔帽关键点检测模型训练
  • 数据收集和标注是一件十分繁杂且又费时费力的工作,请尊重我的劳动成果。

 【尊重原则,转载请注明出处】  https://blog.csdn.net/guyuealian/article/details/134070255

  Android笔尖笔帽关键点检测APP Demo体验:

  


 更多项目《笔尖笔帽检测》系列文章请参考:

  • 笔尖笔帽检测1:笔尖笔帽检测数据集(含下载链接)https://blog.csdn.net/guyuealian/article/details/134070255
  • 笔尖笔帽检测2:Pytorch实现笔尖笔帽检测算法(含训练代码和数据集)https://blog.csdn.net/guyuealian/article/details/134070483
  • 笔尖笔帽检测3:Android实现笔尖笔帽检测算法(含源码 可是实时检测)https://blog.csdn.net/guyuealian/article/details/134070497
  • 笔尖笔帽检测4:C++实现笔尖笔帽检测算法(含源码 可是实时检测)https://blog.csdn.net/guyuealian/article/details/134070516


2. 手笔检测数据集

项目已经收集了四个手笔检测数据集(Hand-Pen Detection Dataset):Hand-voc1,Hand-voc2和Hand-voc3和Hand-Pen-voc,总共约7万张图片

(1)Hand-voc1

Hand-voc1手部检测数据集,该数据来源于国外开源数据集,大部分数据是室内摄像头摆拍的手部数据,不包含人体部分,每张图只含有一只手,分为两个子集:训练集(Train)和测试集(Test);其中训练集(Train)总数超过30000张图片,测试集(Test)总数2560张​​​​;图片已经使用labelme标注了手部区域目标框box,标注名称为hand,标注格式统一转换为VOC数据格式,可直接用于深度学习目标检测模型训练。

(2)Hand-voc2

Hand-voc2手部检测数据集,该数据来源于国内开源数据集,包含人体部分和多人的情况,每张图含有一只或者多只手,比较符合家庭书桌读写场景的业务数据集,数据集目前只收集了980张图片​​​;图片已经使用labelme标注了手部区域目标框box,标注名称为hand,标注格式统一转换为VOC数据格式,可直接用于深度学习目标检测模型训练。


(3)Hand-voc3

Hand-voc3手部检测数据集来源于国外​HaGRID手势识别数据集;原始HaGRID数据集十分庞大,约有55万张图片,包含了18种常见的通用手势;Hand-voc3数据集是从HaGRID数据集中,每种手势随机抽取2000张图片,总共包含18x2000=36000张图片数据​​​;标注格式统一转换为VOC数据格式,标注名称为hand,可直接用于深度学习目标检测模型训练。

关于HaGRID数据集请参考文章:HaGRID手势识别数据集使用说明和下载

(4)Hand-Pen-voc手笔检测数据集

Hand-Pen-voc手笔检测数据集,该数据是项目专门收集含有手部和书写工具笔的数据,大部分图片数据都含有一只手,并且是手握着笔练习写字的情况,其中书写工具笔的种类包含钢笔、铅笔、中性笔、记号笔等,十分符合学生写字/写作/做笔记/做作业的场景数据。数据集目前共收集了16457张图片​​​;图片已经使用labelme标注了两个目标框hand和hand_pen,标注格式统一转换为VOC数据格式,可直接用于深度学习目标检测模型训练。

  1. 目标框hand: 手部目标框,仅当只有手且没有握着笔的情况下才标注为hand
  2. 目标框hand_pen:手握笔目标框,手握着笔正常书写的目标框;由于手握着笔写字,为了囊括笔的区域,标注手部区域目标框box,会比实际的手部要大点点

(5)手笔目标框可视化效果

需要pip安装pybaseutils工具包,然后使用parser_voc显示手部目标框的绘图效果

pip install pybaseutils

import os
from pybaseutils.dataloader import parser_vocif __name__ == "__main__":# 修改为自己数据集的路径filename = "/path/to/dataset/Hand-voc3/train.txt"class_name = ['hand','hand_pen']dataset = parser_voc.VOCDataset(filename=filename,data_root=None,anno_dir=None,image_dir=None,class_name=class_name,transform=None,use_rgb=False,check=False,shuffle=False)print("have num:{}".format(len(dataset)))class_name = dataset.class_namefor i in range(len(dataset)):data = dataset.__getitem__(i)image, targets, image_id = data["image"], data["target"], data["image_id"]print(image_id)bboxes, labels = targets[:, 0:4], targets[:, 4:5]parser_voc.show_target_image(image, bboxes, labels, normal=False, transpose=False,class_name=class_name, use_rgb=False, thickness=3, fontScale=1.2)

 3. 笔尖笔帽关键点检测数据集

笔的种类繁多,材质颜色不一,但笔的外形基本是长条形状;项目没有直接标注笔的外接矩形框,而是将笔分为笔尖(笔头)和笔帽(笔尾)两个端点,这两个端点连接线,则表示整个笔身长度:

  • 笔尖/笔头关键点:位于笔尖突出尖端点位置,index=0
  • 笔帽/笔尾关键点:位于笔末端点中心点位置,index=1
  • 手握笔标注框: box包含笔和手的区域,一般出现在手握着笔书写的情况,不考虑单独出现笔的情况,标注名称为hand_pen

(1)dataset-pen2

dataset-pen2笔尖笔帽关键点检测数据集,改数据由Hand-Pen-voc手笔检测数据集扩充采集获得,标注了手握笔(hand_pen)的目标区域和笔的两端(笔尖和笔帽);大部分图片数据都含有一只手,并且是手握着笔练习写字的情况,其中书写工具笔的种类包含钢笔、铅笔、中性笔、记号笔等,十分符合学生写字/写作/做笔记/做作业的场景数据。数据集分为测试集Test和训练集Train,其中Test数据集有1075张图片,Train数据集有28603张图片;标注格式统一转换为COCO数据格式,可用于深度学习笔尖笔帽关键点检测模型训练

(2)笔尖笔帽关键点可视化效果

需要pip安装pybaseutils工具包,然后使用parser_coco_kps显示手部和笔尖关键点的绘图效果

pip install pybaseutils

import os
from pybaseutils.dataloader import parser_coco_kpsif __name__ == "__main__":# 修改为自己数据集json文件路径anno_file = "/path/to/dataset/dataset-pen2/train/coco_kps.json"class_name = []dataset = parser_coco_kps.CocoKeypoints(anno_file, image_dir="", class_name=class_name,shuffle=False)bones = dataset.bonesfor i in range(len(dataset)):data = dataset.__getitem__(i)image, boxes, labels, keypoints = data['image'], data["boxes"], data["label"], data["keypoints"]print("i={},image_id={}".format(i, data["image_id"]))parser_coco_kps.show_target_image(image, keypoints, boxes, colors=bones["colors"],skeleton=bones["skeleton"],thickness=1)

4. 数据集下载

数据集下载地址:笔尖笔帽检测数据集(含下载链接)

数据集内容包含:

  • 手笔检测数据集:包含Hand-voc1,Hand-voc2和Hand-voc3,Hand-Pen-voc手笔检测数据集总共约7万张图片;标注格式统一转换为VOC数据格式,手部目标框标注为hand,手握着笔的目标框标注为hand_pen,可用于深度学习手部目标检测模型算法开发。

  • 笔尖笔帽关键点检测数据集dataset-pen2,标注了手握笔(hand_pen)的目标区域和笔的两端(笔尖和笔帽);数据集分为测试集Test和训练集Train,其中Test数据集有1075张图片,Train数据集有28603张图片;标注格式统一转换为COCO数据格式,可用于深度学习笔尖笔帽关键点检测模型训练

  • 数据收集和标注是一件十分繁杂且又费时费力的工作,请尊重我的劳动成果

5. 笔尖笔帽关键点检测(Python/C++/Android)

本项目基于Pytorch深度学习框架,实现手写工具笔端(笔尖和笔帽)关键点检测,其中手笔检测采用YOLOv5模型,手写工具笔端(笔尖和笔帽)关键点检测是基于开源的HRNet进行改进,构建了整套笔尖笔帽关键点检测的训练和测试流程;为了方便后续模型工程化和Android平台部署,项目支持轻量化模型LiteHRNet和Mobilenet模型训练和测试,并提供Python/C++/Android多个版本

 Android笔尖笔帽关键点检测APP Demo体验:


6.特别版: 笔尖指尖检测

碍于篇幅,本文章只实现了笔尖笔帽关键点检测;实质上,要实现指尖点读或者笔尖点读功能,我们可能并不需要笔帽检测,而是需要实现笔尖+指尖检测功能;其实现方法与笔尖笔帽关键点检测类似。

下面是成功产品落地应用的笔尖+指尖检测算法Demo,其检测精度和速度性能都比笔尖笔帽检测的效果要好。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/190309.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RT-DETR算法优化改进:Backbone改进 | HGBlock完美结合PPHGNetV2 RepConv

💡💡💡本文独家改进: PPHGNetV2助力RT-DETRHGBlock与PPHGNetV2 RepConv完美结合 推荐指数:五星 HGBlock_PPHGNetV2 | 亲测在多个数据集能够实现涨点 RT-DETR魔术师专栏介绍: https://blog.csdn.net/m0_63774211/category_12497375.html ✨✨✨魔改创新RT-DETR…

Windows 10 下使用Visual Studio 2017 编译CEF SDK

1.下载CEF SDK 由于需要跑在32位的机器,所以选择下载32位的SDKCEF Automated Builds 选择 Current Stable Build (Preferred) ,这是当前稳定版本,CEF版本118 下载成功解压 2.下载编译工具 CMake 下载地址:CMake 配置CMake指向…

前后端交互案例,图书管理系统

先引入前端代码运行看看是否有问题 图书管理系统 定义前后端交互接口 1.登录 URL : /user/login 参数 : userName?&password? 响应 : true/false 2.图书列表展示 : URL : /book/getBookList 参数 : 无 响应 : List<BookInfo> 后端代码如下: package com…

Verilog基础:三段式状态机与输出寄存

相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html 对于Verilog HDL而言&#xff0c;有限状态机(FSM)是一种重要而强大的模块&#xff0c;常见的有限状态机书写方式可以分为一段式&#xff0c;二段式和三段式&#xff0c;笔者强烈建议使用三…

【Docker】深入理解Docker:一种革新性的容器技术

前言 Docker 是一个开源的应用容器引擎&#xff0c;让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。 &#x1f4d5;作者简介&#xff1a;热…

基于servlet+jsp+mysql网上书店系统

基于servletjspmysql网上书店系统 一、系统介绍二、功能展示四、其它1.其他系统实现五.获取源码 一、系统介绍 项目类型&#xff1a;Java web项目 项目名称&#xff1a;基于servletjspmysql网上书店系统 项目架构&#xff1a;B/S架构 开发语言&#xff1a;Java语言 前端技…

二叉树题目:二叉树最大宽度

文章目录 题目标题和出处难度题目描述要求示例数据范围 前言解法一思路和算法代码复杂度分析 解法二思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;二叉树最大宽度 出处&#xff1a;662. 二叉树最大宽度 难度 5 级 题目描述 要求 给定一个二叉树的根结点 …

完全免费!超好用的IDEA插件推荐:Apipost-Helper

Idea 是一款功能强大的集成开发环境&#xff08;IDE&#xff09;&#xff0c;它可以帮助开发人员更加高效地编写、调试和部署软件应用程序,Idea 还具有许多插件和扩展&#xff0c;可以根据开发人员的需要进行定制和扩展&#xff0c;从而提高开发效率,今天我们就来介绍一款国产的…

未来之选:为什么向量数据库是您的数据管理利器

文章目录 前言什么是向量数据库&#xff1f;向量数据库的机制向量数据库的优点‍查询向量数据库 什么是向量Embedding&#xff1f;Amazon OpenSearch Service总结 前言 向量数据库擅长处理复杂的高维数据&#xff0c;正在彻底改变商业世界的数据检索和分析。它们执行相似性搜索…

【Unity插件】2D模拟绳子的插件——Rope 2D Editor

文章目录 前言资源unity商店地址&#xff1a;我这里有一个比较老旧的版本&#xff1a; 使用创建绳子场景使用时效果 参考完结 前言 最近发现一个很有意思的插件Rope 2D Editor&#xff0c;这是一个简单而强大的 2d 绳索编辑器。这是我为我的游戏&#xff08;Dabdob&#xff09…

Linux——vim简介、配置方案(附带超美观的配置方案)、常用模式的基本操作

vim简介、配置方案、常用模式的基本操作 本章思维导图&#xff1a; 注&#xff1a;本章思维导图对应的xmind和.png文件都已同步导入至资源 1. vim简介 vim是Linux常用的文本编辑器&#xff0c;每个Linux账户都独有一个vim编辑器 本篇我们介绍vim最常用的三种模式&#xff1a;…

网络安全之认识托管威胁检测与响应(MDR)

随着数字化转型加速&#xff0c;企业的IT环境日益复杂&#xff0c;面临的网络安全威胁也在不断增加。传统的防御措施已经无法有效应对新型威胁&#xff0c;而且很多企业缺乏专业的网络安全团队和技术手段&#xff0c;导致大量的安全事件未能及时被发现和处理。 在这种背景下&a…

[Mac软件]Adobe Media Encoder 2024 V24.0.2免激活版

软件说明 使用Media Encoder&#xff0c;您将能够处理和管理多媒体。插入、转码、创建代理版本&#xff0c;并几乎以任何可用的格式输出。在应用程序中以单一方式使用多媒体&#xff0c;包括Premiere Pro、After Effects和Audition。 紧密整合 与Adobe Premiere Pro、After …

学用 DevChat 的 VSCode 插件,体验AI智能编程工具 (一)

简单说DevChat是一个辅助编程的智能工具&#xff0c;它可以通过自然语言对话的方式与开发者进行交流&#xff0c;帮助开发者更高效地完成编程任务。 有了人工智能工具&#xff0c;编程进入一个新天地。 闻名已久&#xff0c;不若体验一下。 一.准备工作 1.运行环境. A. p…

京东商品详情API接口使用方法以及示例代码,可高并发请求

京东商品详情API接口是一种用于获取京东商品详细信息的接口。通过该接口&#xff0c;开发人员可以获取到商品的ID、名称、价格、销量、评价等信息&#xff0c;从而进行进一步的数据分析和应用开发。本文将介绍京东商品详情API接口的使用方法、注意事项以及示例代码。 一、使用…

开放领域问答机器人2——开发流程和方案

开放领域问答机器人是指在任何领域都能够回答用户提问的智能机器人。与特定领域问答机器人不同&#xff0c;开放领域问答机器人需要具备更广泛的知识和更灵活的语义理解能力&#xff0c;以便能够回答各种不同类型的问题。 开发开放领域问答机器人的流程和方案可以包括以下步骤…

MySQL | 查询接口性能调优、编码方式不一致导致索引失效

背景 最近业务反馈&#xff0c;列表查询速度过慢&#xff0c;需要优化。 到正式环境系统去验证&#xff0c;发现没筛选任何条件的情况下&#xff0c;查询需要三十多秒&#xff0c;而筛选了条件之后需要13秒。急需优化。 先说结论&#xff1a;连表用的字段编码方式不一致导致索…

达梦数据库答案

1、 创建数据库实例&#xff0c;到/dm8/data下&#xff0c;数据库名&#xff1a;DEMO&#xff0c;实例名DEMOSERVER&#xff08;10分&#xff09; [dmdbadmServer ~]$ cd /dm8/tool [dmdbadmServer tool]$ ./dbca.sh1、 簇大小32&#xff0c;页大小16&#xff0c;登录密码&…

第12章 PyTorch图像分割代码框架-3:推理与部署

推理模块 模型训练完成后&#xff0c;需要单独再写一个推理模块来供用户测试或者使用&#xff0c;该模块可以命名为test.py或者inference.py&#xff0c;导入训练好的模型文件和待测试的图像&#xff0c;输出该图像的分割结果。inference.py主体部分如代码11-7所示。 代码11-7 …