介绍
怎么在python中使用opencv修改图片的尺寸?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
import cv2 import 操作系统 #,按指定图像大小调整尺寸 def resize_image(图像,height =, 640年,width =, 480): ,,,,,,,,right =, (0, 0, 0, 0) ,, #,才能获取图片尺寸 ,,h, w, _ =image.shape ,, #,才能对于长宽不等的图片,找到最长的一边 longest_edge 才能=,马克斯(h, w) ,, #才能,计算短边需要增加多少像素宽度才能与长边等长(相当于填充,长边的填充为0,短边才会有填充) if 才能h & lt;, longest_edge: ,,,dh =, longest_edge 作用;h ,,,top =, dh //2 ,,,bottom =, dh 作用;上面 elif 才能w & lt;, longest_edge: ,,,dw =, longest_edge 作用;w ,,,left =, dw //2 ,,,right =, dw 作用;离开 其他的才能: ,,,pass #,通过是空语句,是为了保持程序结构的完整性将不做任何事情,一般用做占位语句。 ,, #才能,RGB颜色 BLACK 才能=,(0,0,0) #,才能给图片增加衬垫,使图片长,宽相等 #才能,,,,,,,对分别是各个边界的宽度,cv2.BORDER_CONSTANT是一种border 类型,表示用相同的颜色填充 constant 才能=,cv2.copyMakeBorder(图片,,,,,,,,对,,cv2.BORDER_CONSTANT,, value =,黑色) #,才能调整图像大小并返回图像,目的是减少计算量和内存占用,提升训练速度 return 才能;cv2.resize(常数,,(高度,宽度)) def read__image (path_name): num 才能=,0, for 才能;dir_image 拷贝os.listdir (path_name):, #, os.listdir(),方法用于返回指定的文件夹包含的文件或文件夹的名字的列的表 ,,,full_path =, os.path.abspath (os.path.join (path_name dir_image)), ,,,, ,,,if os.path.isdir (full_path):, #如果是文件夹,继续递归调用 ,,,,,read_training_data (full_path) ,,,:,#如果是文件了 ,,,,,if dir_image.endswith (& # 39; jpg # 39;): ,,,,,,,image =, cv2.imread (full_path) ,,,,,,,image =, resize_image(图片) ,,,,,,,#将尺寸调整好的图片保存起来 ,,,,,,,image_name =, & # 39; % s % d.jpg& # 39;, %, (& # 39; resize_image& # 39;, num), #,注意这里图片名一定要加上扩展名,否则后面imwrite的时候会报错, ,,,,,,,cv2.imwrite (image_name,,图片) ,,,,,,,num =, num + 1 if __name__==& # 39; __main__ # 39;: read__image才能(& # 39;C:/用户/baideguo/数据/JPEGImages & # 39;)
python可以做什么
python是一种编程语言,内置了许多有效的工具,python几乎无所不能,该语言通俗易懂,容易入门,功能强大,在许多领域中都有广泛的应用,例如最热门的大数据分析,人工智能,网页开发等。
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。