求问怎么把照片裁剪成证件照?希望可以批量处理的。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求问怎么把照片裁剪成证件照?希望可以批量处理的。相关的知识,希望对你有一定的参考价值。

有的时候我们也会先收集照片(例如通过邮箱、群等方式),然后再统一处理成规定的证件照格式,这样对于用户来说也是比较方便的,特别是用户群体是不方便使用手机自己操作的群体,例如老年人、采集人、中小学生等。

此时我们可以借助这个方法:

1、先将收集到的证件照放在同一个文件夹内备用。如下图所示,可以看到收集来的照片乱七八糟:

2、在电脑浏览器使用百度搜索【报名电子照助手】网站,找到“批量改证件照”,目前只支持在电脑浏览器中操作:

3、在左侧设置好照片尺寸大小,我们继续以退伍军人照片采集的尺寸为例

4、点击上传照片,找到照片文件夹,Ctrl+A全选并点击上传

也可以分多次添加照片,以及删除多余的照片

5、点击“上传”按钮,照片就会依次上传,并且全自动完成处理(抠图、换背景、压缩大小、修改尺寸等)

6、可以看到照片都被处理成了统一的尺寸和白色背景,并且可以看到处理成功的数量和失败的数量,以及失败的原因。

7、将失败的照片重新上传处理,待全部成功后,就可以打包下载了

参考技术A 图像处理软件。0图片处理知识的人都可以轻松使用。
批量把照片裁剪成证件照的操作步骤:
1.打开iSee软件,选择“批量”功能。
2.选择需要批量裁剪的照片,以及处理后照片需要保存的路径。
3.点击“组合处理”--自动裁剪--驾驶证\2代身份证。。。
3.点击“确定”。就可以批量裁剪了。
操作非常简单的。你可以试试。
iSee图片专家亮点:1、专为淘宝卖家提供批量上传图片,批量修改图片、批量改大小、批量加水印、批量裁剪...一系列的批量功能。还支持在线修改,在线替换图片。方便好用。网上开店的卖家处理图片的首选哦。
2、专为爱美的GGMM设计的“色调均化”功能,一键即可还原真实环境光线,更使平庸的照片变得色彩丰富、明亮通透。
3、在人像美容方面再次加入更多强大的功能,照片修饰、人物扮靓方式更人性化和多元化。
4、独创还原笔功能,跟各种特效结合后产生非常好的效果。本回答被提问者采纳
参考技术B 1、手机应用市场下载【智能证件照相机】
2、打开相机选择好自己需要的证件照尺寸
3、上传需要裁剪的照片或者在线拍摄即可

Python OpenCV给证件照换底色

投简历、找工作这些事都需要证件照,有些还要求证件照背景颜色、尺寸大小,本文分享一下如果通过Python OpenCV来实现照片裁剪和更换背景色


1、读取照片

import cv2import numpy as np# 读取照片image = cv2.imread(1.jpg)

Python


2、修改照片尺寸

发现图片太大,修改图片尺寸

image = cv2.resize(image,None,fx=0.5,fy=0.5)

第一个参数image:为原始图像

第二个参数size:尺寸数组,我设置None

第三个和第四个参数fx,fy:新图为原图的比例。

比例和尺寸只能设置一个

# 修改尺寸image = cv2.resize(image, None, fx=0.5, fy=0.5)

3、BGR图片转灰度图

彩色图无法进行梯度闭运算。

闭运算:对图像先进行膨胀再腐蚀,有助于关闭前景物体上的小孔或者小黑点

形态学变换:开运算,闭运算,梯度运算

所以先将图片转换为hsv格式

cv2.cvtColor(img,cv2.COLOR_BGR2HSV)

可以将彩色图片转化为hsv灰度图片

转换成hsv是因为,hsv的色彩空间有表可查。

# 图片转换为二值化图hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)print(hsv)

PythonPython


4、图片二值化处理

形态学变换需要的是二值图片。

cv2.inRange(hsv,lower_red,upper_red)

hsv:图像

lower_red指的是图像中低于这个lower_red的值,图像值变为0

upper_red指的是图像中高于这个upper_red的值,图像值变为0

而在lower_red~upper_red之间的值变成255。

完成二值变换。

每张图的lower_red,upper_red 不同。自己可以查找hsv色彩空间表。然后结合,修改数值。

# 图片的二值化黑白处理lower_blue = np.array([90, 70, 70])upper_blue = np.array([110, 255, 255])heibai = cv2.inRange(hsv, lower_blue, upper_blue)# 显示cv2.imshow(image, image)cv2.imshow(hsv, hsv)cv2.imshow(heibai, heibai)# 无限等待cv2.waitKey(0)# 销毁内存cv2.destroyAllWindows()

PythonPythonPython


5、图片去噪

黑白色的照片周围可能有黑色小点噪声。这种情况下需要去除背景色噪声,选用膨胀。

膨胀即对图片高亮色进行膨胀。周围只有有一个为1,即是1;再进行腐蚀,缩小图片尺寸。即闭运算操作。

不同的图片噪声不一样,如是前景色人物含有小白点,则进行开运算操作。

这次颜色的图片中因为颜色分明,不存在明显噪音,如果去除噪音可以采用下面方法

# 闭运算k = np.ones((5, 5), np.uint8)r

6、图片颜色替换

遍历黑白照,找到白色像素点的位置索引,同理找到原图(白色像素点对应位置索引),换成颜色替换。

# 颜色替换imageNew = np.copy(image)rows, cols, channels = image.shapefor i in range(rows):    for j in range(cols):        if r[i, j] == 255:  # 像素点为255表示的是白色,我们就是要将白色处的像素点,替换为红色            imageNew[i, j] = (0, 0, 255)  # 此处替换颜色,为BGR通道,不是RGB通道



完整代码:

import cv2import numpy as np
# 读取照片image = cv2.imread(1.jpg)# 修改尺寸image = cv2.resize(image, None, fx=0.5, fy=0.5)# 图片转换为二值化图hsv = cv2.cvtColor(image, cv2.COLOR_BGR2HSV)print(hsv)# 图片的二值化黑白处理lower_blue = np.array([90, 70, 70])upper_blue = np.array([110, 255, 255])heibai = cv2.inRange(hsv, lower_blue, upper_blue)# 闭运算k = np.ones((5, 5), np.uint8)r = cv2.morphologyEx(heibai, cv2.MORPH_CLOSE, k)# 颜色替换imageNew = np.copy(image)rows, cols, channels = image.shapefor i in range(rows): for j in range(cols): if r[i, j] == 255: # 像素点为255表示的是白色,我们就是要将白色处的像素点,替换为红色 imageNew[i, j] = (0, 0, 255) # 此处替换颜色,为BGR通道,不是RGB通道# 显示cv2.imshow(image, image)cv2.imshow(hsv, hsv)cv2.imshow(heibai, heibai)cv2.imshow(r, r)cv2.imshow(imageNew, imageNew)# 无限等待cv2.waitKey(0)# 销毁内存cv2.destroyAllWindows()

Python

以上是关于求问怎么把照片裁剪成证件照?希望可以批量处理的。的主要内容,如果未能解决你的问题,请参考以下文章

可换服装的证件照软件免费下载

Python OpenCV给证件照换底色

怎么使用Microsoft Excel更改证件照背景颜色?比PS还要简单

Ps 原来排版证件照如此简单(╹ڡ╹ )

微信修改照片的小程序是个啥软件

照片太小怎么变大kb