OpenCV批量修改图片及批量命名

本文介绍了如何使用批处理.bat文件和CMD命令来批量重命名图片,并利用OpenCV在Visual Studio中进行图片处理,例如将BMP转换为指定尺寸的JPG图片。通过CMD获取图片名称列表,结合OpenCV的cvtColor函数,成功避免了转换过程中出现的单通道问题。
摘要由CSDN通过智能技术生成

【1】使用.bat文件批量更名

在图片所在的文件夹【新建txt文件】,然后【输入如下代码】:

@echo off
set a=0
setlocal EnableDelayedExpansion
for %%n in (*.bmp) do (
set /A a+=1
ren "%%n" "!a!.bmp"
)

其中:

1.a=0表示将要给文件命名的序号的初始值(当然这里命名的其实是从1开始的,相信各位一看就知道)。

2.(*.bmp)对应你原本图片的格式,如是jpg则换成(*.jpg)

3."!a!.bmp"是你将要改成的名字,这里输出的结果是 1.bmp 。也可以改成"test!a!.bmp",那么结果就是 test1.bmp

再【保存】,然后【改为bat格式】,最后【双击】运行。

【2】使用cmd获取名称列表

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
批量去除3000张图像的白色背景,你可以使用以下步骤: 1. 创建一个循环来迭代处理每张图像。假设你的图像文件名是以数字顺序命名的,例如image_1.jpg, image_2.jpg, image_3.jpg,依此类推。 ```python import cv2 import numpy as np for i in range(1, 3001): filename = f"image_{i}.jpg" image = cv2.imread(filename) # 在这里添加去除白色背景的代码 ``` 2. 在循环内部,按照之前提到的方法去除每张图像的白色背景。 ```python hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) lower_white = np.array([0, 0, 200], dtype=np.uint8) upper_white = np.array([255, 30, 255], dtype=np.uint8) mask = cv2.inRange(hsv_image, lower_white, upper_white) result = cv2.bitwise_and(image, image, mask=mask) ``` 3. 将处理后的图像保存到新的文件中。 ```python output_filename = f"output_{i}.jpg" cv2.imwrite(output_filename, result) ``` 4. 完整的代码如下: ```python import cv2 import numpy as np for i in range(1, 3001): filename = f"image_{i}.jpg" image = cv2.imread(filename) hsv_image = cv2.cvtColor(image, cv2.COLOR_BGR2HSV) lower_white = np.array([0, 0, 200], dtype=np.uint8) upper_white = np.array([255, 30, 255], dtype=np.uint8) mask = cv2.inRange(hsv_image, lower_white, upper_white) result = cv2.bitwise_and(image, image, mask=mask) output_filename = f"output_{i}.jpg" cv2.imwrite(output_filename, result) ``` 将这段代码保存到一个 Python 脚本文件中,确保图像文件与脚本文件在同一个目录下,然后运行脚本即可批量去除图像的白色背景并保存结果。请注意,这个方法还是假设白色背景的像素值在一定的范围内,如果你的图像背景不是纯白色,你可能需要根据实际情况调整阈值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值