Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tensorflow 基于YOLO的不同dpi图像目标检测_Tensorflow_Object Detection_Dpi_Yolo - Fatal编程技术网

Tensorflow 基于YOLO的不同dpi图像目标检测

Tensorflow 基于YOLO的不同dpi图像目标检测,tensorflow,object-detection,dpi,yolo,Tensorflow,Object Detection,Dpi,Yolo,我正在训练YOLOV2学习电域对象。 如变压器、配电盘等。 我以200 DPI的速度训练了多个物体。当我使用测试图像集运行模型时,它给了我很好的精确度(.94),但当我使用不同的DPI(300 DPI)模型进行测试时,却找不到任何对象 用于训练的对象是 我错过了什么?模型是否需要使用所有可能的DPI进行培训 注:当我的损失率达到0.2时,我停止了训练。训练98张图片。333注释 请让我知道,如果我可以与其他一些机器学习技术去检测像上面这样的小物体 我认为这是因为大图像被缩小到固定大小的图像,例

我正在训练YOLOV2学习电域对象。 如变压器、配电盘等。 我以200 DPI的速度训练了多个物体。当我使用测试图像集运行模型时,它给了我很好的精确度(.94),但当我使用不同的DPI(300 DPI)模型进行测试时,却找不到任何对象

用于训练的对象是

我错过了什么?模型是否需要使用所有可能的DPI进行培训

注:当我的损失率达到0.2时,我停止了训练。训练98张图片。333注释


请让我知道,如果我可以与其他一些机器学习技术去检测像上面这样的小物体

我认为这是因为大图像被缩小到固定大小的图像,例如416x416,这样就可以将其输入YOLOv2。如果我们缩小图像的比例,有时薄薄的谎言会从原始图像中消失

让我用以下例子来说明:


是的,您应该在不同的DPI上对您的模型进行培训,尽管并非所有可能的DPI都需要。一般来说,训练和测试数据应该来自类似的分布,除非你实现了一些其他方法使其通用化。另一个选择是将你的测试图像转换为200DPI,因为你在更高的维度上有它。是的,这就是我的例子中的问题。线条在这里确实非常重要。那怎么办?!
import numpy as np
import matplotlib.pyplot as plt
import cv2
# for i in range(10):plt.close()

img_original = np.zeros((100, 100, 3)) # 100 x 100 RGB Black image
img_original[::10, :, :] = 255 # add some white lines

img_resized = cv2.resize(img_original, (10, 10)) # resize into 10 x 10 RGB

fig = plt.figure(figsize=(6, 3))
ax1 = fig.add_subplot(121)
ax1.imshow(img_original)
plt.xlabel('Original 100 x 100')
ax2 = fig.add_subplot(122)
ax2.imshow(img_resized)
plt.xlabel('Resized 10 x 10')
fig.savefig('./demo.jpg')
plt.show()