提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:杨鹏连|2020-11-26 13:39:28.447|阅读 230 次
概述:在本文中,我将分享如何从Google快速下载一堆条形码图像,以及如何使用Dynamsoft Barcode Reader SDK自动添加标签名称。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
Dynamsoft Barcode Reader SDK一款多功能的条码读取控件,只需要几行代码就可以将条码读取功能嵌入到Web或桌面应用程序。这可以节省数月的开发时间和成本。能支持多种图像文件格式以及从摄像机或扫描仪获取的DIB格式。使用Dynamsoft Barcode Reader SDK,你可以创建强大且实用的条形码扫描仪软件,以满足你的业务需求。
点击下载Dynamsoft Barcode Reader最新版
LabelImg是使用Python和Qt5编写的免费开源图像注释工具。它支持主流机器学习框架通常采用的Pascal VOC格式和Yolo格式。如果您对条形码对象检测感兴趣,则可以使用该工具用边界框注释不同的条形码符号。在本文中,我将分享如何从Google快速下载一堆条形码图像,以及如何使用Dynamsoft Barcode Reader SDK自动添加标签名称。
图片下载
首先,我们需要图像。我们如何获得一堆具有相同分类的图像?
有一个方便的Python库google_images_download。
pip install google_images_download当我运行库时,我发现它通常无法正常工作。它总是无法下载任何图像。该问题已在//github.com/hardikvasa/google-images-download/issues/331上提及。幸运的是,有人提供了可行的解决方法。我们可以使用已修复问题的分支存储库:
git clone //github.com/Joeclinton1/google-images-download.git cd google-images-download && python setup.py install根据在线文档,我们可以编写一个简单的Python脚本来下载图像,如下所示:
from google_images_download import google_images_download import argparse ap = argparse.ArgumentParser() ap.add_argument("-k", "--keywords", required=True, help="The keywords/key phrases you want to search for.") ap.add_argument("-l", "--limit", required=True, help="The number of images that you want to download.") args = vars(ap.parse_args()) response = google_images_download.googleimagesdownload() arguments = {"keywords":args["keywords"],"limit":args["limit"],"print_urls":True} paths = response.download(arguments) print(paths)将Python脚本保存到google-image-downloader.py。
让我们从Google下载10张PDF417图像:
python3 google-image-downloader.py -k pdf417 -l 10条形码对象注释
条形码图像准备就绪后,我们就可以开始为条形码加标签了。
第一步是获取LabelImg存储库的源代码:
git clone //github.com/tzutalin/labelImg.git使用LabelImg,我们可以通过眼睛标记大多数对象。但是,您可能不知道所有条形码符号。为了精确快速地命名条形码对象,我们可以使用Dynamsoft Barcode Reader作为辅助工具:
pip install dbr初始化Dynamsoft条码阅读器非常简单:
from dbr import * reader = BarcodeReader()转到labelImg.py中的函数newShape(self)。完成为对象绘制边界框后,将触发该功能。
下一步是从当前形状获取坐标,该坐标存储为画布中形状数组的最后一个元素:
shape = self.canvas.shapes[-1]形状有四个点。为了提取坐标值并为Dynamsoft Barcode Reader设置区域值,我们使用左上角和右下角:
reader.reset_runtime_settings() shape = self.canvas.shapes[-1] points = shape.points settings = reader.get_runtime_settings() settings.region_bottom = round(points[2].y()) settings.region_left = round(points[0].x()) settings.region_right = round(points[2].x()) settings.region_top = round(points[0].y()) reader.update_runtime_settings(settings)之后,我们可以通过调用Python条形码解码API来获取区域内的条形码信息:
try: text_results = reader.decode_file(self.filePath) if text_results != None: for text_result in text_results: print("Barcode Format :") print(text_result.barcode_format_string) self.prevLabelText = text_result.barcode_format_string print("Barcode Text :") print(text_result.barcode_text) print("Localization Points : ") print(text_result.localization_result.localization_points) print("-------------") except BarcodeReaderError as bre: print(bre)保存labelImg.py文件并运行程序:
python3 labelImg.py当您为条形码对象创建一个矩形框时,它将自动用相应的条形码类型填充标签对话框。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢