python 等比例缩放图片
在对图片缩放时,可能会使得图片产生变形,以下代码按照比例缩放图片,保持长宽比。
例如原图为:
如果resize成(224,224)则图片变为
import cv2def process_image(img, min_side):size = img.shapeh, w = size[0], size[1]#长边缩放为min_sidescale = max(w, h) / float(min_side)new_w, new_h = int(w/scale), int(h/scale)resize_img = cv2.resize(img, (new_w, new_h))# 填充至min_side * min_sideif new_w % 2 != 0 and new_h % 2 == 0:top, bottom, left, right = (min_side-new_h)/2, (min_side-new_h)/2, (min_side-new_w)/2 + 1, (min_side-new_w)/2elif new_h % 2 != 0 and new_w % 2 == 0:top, bottom, left, right = (min_side-new_h)/2 + 1, (min_side-new_h)/2, (min_side-new_w)/2, (min_side-new_w)/2elif new_h % 2 == 0 and new_w % 2 == 0:top, bottom, left, right = (min_side-new_h)/2, (min_side-new_h)/2, (min_side-new_w)/2, (min_side-new_w)/2else:top, bottom, left, right = (min_side-new_h)/2 + 1, (min_side-new_h)/2, (min_side-new_w)/2 + 1, (min_side-new_w)/2pad_img = cv2.copyMakeBorder(resize_img, int(top), int(bottom), int(left), int(right), cv2.BORDER_CONSTANT, value=[0,0,0]) #从图像边界向上,下,左,右扩的像素数目return pad_imgif __name__ == '__main__':image = cv2.imread('/home/yasin//test.png')img_new = process_image(image, 224)cv2.imshow("img_new", img_new)cv2.waitKey()
结果为:
python 等比例缩放图片相关推荐
- python 等比例缩放图片 自写
Python等比例缩放图片 使用了 OpenCV 进行图片的读取 输入:利用 cv2.imread 函数读取的 Mat 矩阵 输出:缩放后的 Mat 矩阵(示例代码为缩放到 512x512 大小,也可 ...
- python调整屏幕缩放比例_python实现批量按比例缩放图片效果
本文实例为大家分享了python实现批量按比例缩放图片的具体代码,供大家参考,具体内容如下 把脚本文件放在要缩放的文件夹下面. 双击运行脚本,输入要缩放的系数.脚本会在当前目录下创建一个scaledI ...
- Python Opencv等比例缩放图片
Python Opencv等比例缩放图片 前言 前提条件 相关介绍 实验环境 等比例缩放图片 代码实现 输出结果 前言 本文是个人使用Python Opencv处理图片的笔记,由于水平有限,难免出现错 ...
- 等比例缩放图片并填充图片为正方形(python附代码)
等比例缩放图片并填充图片为正方形 看实现的效果 代码 看实现的效果 之前的 836x662 之后的 300x300 且图片中的塔克斯居中 代码 import os import cv2 import ...
- [原创] 图片操作的类(ImageLibrary)-按比例缩放图片
[原创] 图片操作的类(ImageLibrary)-按比例缩放图片 http://www.vjsdn.com/bbs/bbsTopicDetails.aspx?pid=241 转载于:https:// ...
- java实现按比例缩放图片技巧
java实现按比例缩放图片技巧 案例需求: 根据指定的文件名称,用户给定的缩放比例来完成缩放图片 思路分析: 1.文件对象File 2.BufferedImage构造器: 图像数据的访问的缓冲器 3. ...
- Java 等比例缩放图片
/*** 等比率缩放* @param imgsrc 原图片路径* @param imgdist 缩放图片路径* @param widthdist 指定缩放宽度*/ public static void ...
- JS实现等比例缩放图片
JS实现等比例缩放图片 有时候我们前端页面只有500×500像素的宽和高的布局,但是后台返回的数据图片是1000×1000,那么这种情况下 如果我直接返回的话 那么图片肯定有一部分没有显示出来,在这种 ...
- [Xcode 实际操作]六、媒体与动画-(1)使用图形上下文按一定比例缩放图片
目录:[Swift]Xcode实际操作 本文将演示如何通过图形上下文,来实现图片缩放的功能. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] 1 import UI ...
最新文章
- 前端学习(1355) 子模板
- 大火C4D元素,电商大促海报背景BANNER素材
- 【java笔记】接口的定义,接口的使用
- 世平数据库保密检查工具再次荣膺中国“优秀软件产品”称号
- word2010转html默认页面视图,word2010中,切换到页面视图方式的组合键
- 联通专线切换成移动专线问题故障解决
- 系统架构师论文-论软件开发平台的选择和应用(MIS系统)
- 【11-13】A股主要指数的市盈率(PE)估值高度
- MyExcel 2.1.4 版本发布,多项功能增强
- img元素实现图片裁切放大
- 基于XMPP协议的Android即时通信系(http://blog.csdn.net/lnb333666/article/details/7471292)...
- oracle的oca证书,Oracle三大认证考试及其含金量解析
- java经典50道编程题(很好练逻辑思维的题)(第一篇)
- python 读写csv文件(创建,追加,覆盖)
- 10月各国最新签证及入境政策汇总
- 微信小程序实现分享功能
- k8s学习-CKA考试必过宝典
- 关于HTML中a标签的重大安全性漏洞!!!
- matlab三相短路电流计算程序_电力系统三相短路计算的MATLAB代码.doc
- 二十三、动网格Smoothing Diffusion方法及实例
热门文章
- 计算机电缆备用芯,怎样区分控制电缆和电力电缆
- 腾讯云服务器开放解封25端口的方法步骤
- 大学生网页设计成品,这六个页面美哭了,Html宫崎骏的幻想世界动漫主题,超美视觉设计精品
- 电商项目开发(系统功能分析、架构分析)
- Java之GUI简单介绍
- 连接共享打印机,提示“操作无法完成(错误 0x00000709)”
- C语言—字符指针作函数参数 按如下函数原型编程实现字符串连接函数strcat()的功能。void MyStrcat(char *dstStr, char *srcStr);
- 困扰许久的Kafka Rebalance问题
- springboot大学生综合素质测评系统 毕业设计-附源码51615
- 2、Power Map—Power Map安装与使用?