正文
深度学习voc数据集图片resize
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
本人新写的3个pyhton脚本。
(1)单张图片的resize:
# coding = utf-8
import Image def convert(width,height):
im = Image.open("C:\\workspace\\PythonLearn1\\test.jpg")
out = im.resize((width, height),Image.ANTIALIAS)
out.save("C:\\workspace\\PythonLearn1\\test.jpg")
if __name__ == '__main__':
convert(256,256)
(2)resize整个文件夹里的图片:
# coding = utf-8
import Image
import os def convert(dir,width,height):
file_list = os.listdir(dir)
print(file_list)
for filename in file_list:
path = ''
path = dir+filename
im = Image.open(path)
out = im.resize((256,256),Image.ANTIALIAS)
print "%s has been resized!"%filename
out.save(path) if __name__ == '__main__':
dir = raw_input('please input the operate dir:')
convert(dir,256,256)
注意点:服务器性能所限,要将500*500数据集resize到256*256。上面只是初步处理,实际上要训练出高质量的模型以上的方式并不严谨,应当按比例resize,这样的好处是图片不会变形。
(3)按比例resize
# coding = utf-8
import Image def convert(width,height):
im = Image.open("C:\\workspace\\PythonLearn1\\test_1.jpg")
(x, y)= im.size
x_s = width
y_s = y * x_s / x
out = im.resize((x_s, y_s), Image.ANTIALIAS)
out.save("C:\\workspace\\PythonLearn1\\test_1_out.jpg")
if __name__ == '__main__':
convert(256,256)
本来我的计划是按照比例resize图片,因为图片不可能正好是正方形的,所以想在不足256*256时用空白填充(这句话来自FCN的原文),后来有小伙伴说其实fcn可以接收任意尺寸大小的图片,用空白填充可能还会引入噪声,所以目前工作只做到这里。
关于python的图像处理库,PIL下面的链接给出了参考。在后续的制作数据集的过程中应该会有用武之地。
参考文章: http://blog.csdn.net/yupu56/article/details/50471119