一个python包来分析不同类型的文档

pyrack的Python项目详细描述


这是一个python包,用于分析在不同类型的文档中执行的检测。在当前版本中,它只支持在图像中检测到的对象。在

此版本与ImageAI使用预先训练的权重ResNet50执行的对象检测兼容。在

下载并将上述预先训练的权重放入本地文件夹中。在

所有的实现和测试都是使用来自MS COCO 2017数据集的随机样本执行的。一定要查看Demo文件夹中的笔记本,对您的自定义数据进行一些实验。在

安装

使用以下命令安装此软件包:

pip install --upgrade pyrack

要检测对象并对其执行某些分析,请使用以下命令导入包:

^{pr2}$

功能

以下功能可以在当前版本\

  1. 读取图像

此函数以numpy数组的形式读取并存储RGB颜色空间中的图像。在

img = obj.img(image_path)
  1. 显示图像

这将加载在上一步中读取的图像。在

obj.display_original_image(img)
^{1}$
  1. 定义模型路径

这里我们需要提到的是我们存储了用于目标检测的预先训练的模型权重的路径。在

model_path = obj.model_weights(os.path.join(path, 'resnet50_coco_best_v2.0.1.h5'))
  1. 检测图像中的对象

借助于上面加载的预先训练的权重,我们对步骤1中加载的图像执行目标检测。在

detections = obj.detections(img)
  1. 获取所有检测到的对象

在这里,我们打印上一步中检测到的所有对象的列表。在

detected_objects = obj.detected_objects(img, detections)
print(detected_objects)
  1. 获取所有检测到的对象的边界框(bbox)坐标

这里我们提取每个检测到的物体的bbox坐标。在

bbox = obj.bbox(detections)
  1. 获取感兴趣区域(roi)

从上面提取的bbox中,我们可以在检测到的图像周围绘制roi,我们可以在这些图像上执行进一步的操作。在

roi = obj.roi(img, detections)
  1. 调整投资回报率

在这里,我们将每个roi调整为(100100,3)维。太小的对象将在调整大小之前用黑色像素填充。在

resized_roi = obj.resized_roi(img, roi)
  1. 检测次数

在这里,我们打印加载图像上执行的检测总数。在

obj.number_of_detections(img, detections)
  1. 检测到唯一项目

此函数用于返回在图像中检测到的所有唯一项。在

obj.unique_items_detected(img, detected_objects)
  1. 每个唯一对象的计数

这里我们可以看到在图像中检测到的每个唯一对象的计数。在

obj.count_per_unique_item(img, detected_objects)
count_of_each_object
  1. 每个检测到的对象的形状

在这里我们可以看到每个被探测到的物体的三维形状。在

obj.detected_objects_shape(img, detected_objects, roi)
  1. 显示所有检测到的对象

在这里,我们分别显示从图像中检测到的每个对象。在

obj.display_all_objects(img, detected_objects, roi)
display_all_objects
  1. 显示特定对象

这里我们提供一个选项,只显示在图像中检测到的特定对象。在

obj.display_specific_image(img, detected_objects, roi)
display_specific_objects
  1. 显示所有调整大小的对象

在这里,所有调整大小的roi将被连接并显示为所有检测到的对象的一个图像。在

obj.display_all_resized_objects(img, detected_objects, resized_roi)
display_resized_objects
  1. 按类分组对象

在这里,我们将显示所有检测到的对象,并按其各自的类进行分组。在

obj.group_objects_by_class(img, detected_objects, resized_roi)
group_objects_by_class

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
选项卡内的java 安卓工具栏   java接口VS API VS公共类   无法解析java。lang.ClassNotFoundException:在安卓 studio中找不到类“com.example.安卓.camera2basic.AutoFitTextureView”?   java等待线程正常完成   java在JTable中的prepareRenderer方法中编辑单元格数据是否可行?   java SessionNotCreatedException selenium webdriver   java Android Studio Gradle CreateProcess错误=2   java找不到适用于异常(int)的构造函数   javascript如何在不使用正则表达式的情况下检查输入是否为表情符号?   从JAVA运行ant时,JAVA_HOME变量不正确   long的java min值引发异常   java如何在这段代码中实现侦听器?   带有透明文本的java Android按钮   图像Java扫描仪问题(JFrame)   java模拟输入蒸汽似乎在Junit测试的第一次输入中就被吃掉了   压缩Java Deflater,现在和将来的结果相同(确定性)   java JTable getModel()。setValueAt从数组中删除第一个元素   java我有不同于编译器和计算器的价值   使用C#客户端调用基本身份验证java webservice   java相同类型的多个@Embedded字段在持久化后始终为空