**批处理**自定义修改图片的分辨率

"""
批处理文件夹train下的images和labels文件夹中的图片,进行重新修改尺寸操作,并替换保存。
注意是**批处理**,会把train中所有的文件夹下的所有图片都修改分辨率。
敲黑板,划重点!!!会直接把 原分辨率 的图片替换为 指定分辨率的图片!!!
文件夹结构:
    PATH:'/home/stu/zy/MySwin-Unet/data/train'
    childPATH:PATH下的'/labels'
    childPATH:PATH下的'images'


"""

import cv2
import os
import sys


# PATH = r'/root/autodl-tmp/MySwin-Unet/data/' # 这个路径只需写到train和val文件夹即可。文件夹下的图片程序会自动帮你打开
PATH = 'C:\\Users\\cc\\train'
# 我这里是相对路径,亲测中文路径也可以

def resizeImage(file, NoResize):
    image = cv2.imread(file, cv2.IMREAD_COLOR)

    # 如果type(image) == 'NoneType',会报错,导致程序中断,所以这里先跳过这些图片,
    # 并记录下来,结束程序后手动修改(删除)

    if image is None:
        NoResize += [str(file)]
    else:
        resizeImg = cv2.resize(image, (521, 512)) # 这里改为自己想要的分辨率
        cv2.imwrite(file, resizeImg)
        cv2.waitKey(100)


def resizeAll(root):
    # 待修改文件夹
    fileList = os.listdir(root)
    # 输出文件夹中包含的文件
    # print("修改前:"+str(fileList))
    # 得到进程当前工作目录
    currentpath = os.getcwd()
    # 将当前工作目录修改为待修改文件夹的位置
    os.chdir(root)

    NoResize = []  # 记录没被修改的图片

    for file in fileList:  # 遍历文件夹中所有文件
        file = str(file)
        resizeImage(file, NoResize)

    print("---------------------------------------------------")

    os.chdir(currentpath)  # 改回程序运行前的工作目录

    sys.stdin.flush()  # 刷新

    print('没别修改的图片: ', NoResize)


if __name__ == "__main__":
    # 子文件夹
    for childPATH in os.listdir(PATH):
        # 子文件夹路径
        childPATH = PATH + '/' + str(childPATH)
        # print(childPATH)
        resizeAll(childPATH)
    print('------修改图片大小全部完成❥(^_-)')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用 Windows 自带的命令行工具“wmic”来实现自定义占用 CPU 的使用率的批处理。具体操作如下: 1. 打开命令行工具,输入“wmic cpu get loadpercentage”查看当前 CPU 的使用率。 2. 输入“wmic path Win32_PerfFormattedData_PerfOS_Processor where Name='_Total' get PercentProcessorTime”查看当前系统总体 CPU 使用率。 3. 输入“wmic path Win32_PerfFormattedData_PerfOS_Processor where Name='_Total' set PerformanceLimit=50”将 CPU 的使用率限制在 50%。 4. 输入“wmic path Win32_PerfFormattedData_PerfOS_Processor where Name='_Total' set PerformanceLimit=100”将 CPU 的使用率恢复到 100%。 注意:以上命令需要以管理员身份运行,否则可能会出现权限不足的错误。另外,使用这种方法限制 CPU 使用率可能会影响系统的性能,谨慎使用。 ### 回答2: 您好!如果您需要一个批处理脚本能够自定义占用CPU的使用率,您可以尝试以下的方法: 1. 使用Windows的powercfg命令:您可以创建一个批处理脚本来调整电源计划中的CPU最大使用率。例如,您可以使用以下命令将CPU的最大使用率设置为50%: ``` powercfg -setacvalueindex scheme_current sub_processor processor_throttle 50 ``` 然后您可以将这个命令添加到批处理脚本中,并根据需要进行自定义。 2. 使用第三方工具:有一些第三方工具可以帮助您精确控制CPU的使用率。例如,您可以使用"Process Lasso"这样的工具来设置特定进程的CPU使用率。您可以创建一个批处理脚本,在其中使用命令行来调用这些工具,并根据需要进行自定义。 无论您选择使用哪种方法,记得在使用之前请充分了解和测试这些设置,以确保安全和稳定性。希望以上信息能对您有所帮助! ### 回答3: 您好,关于您所需的批处理程序可以自定义占用 CPU 使用率的问题,以下是一个简单的示例代码: ```batch @echo off set /p usage_rate=请输入希望的 CPU 使用率(1-100之间): :LOOP echo 正在占用 CPU 资源,请稍候... for /l %%i in (1, 1, %usage_rate%) do ( echo off ) goto LOOP ``` 以上批处理程序会要求用户输入希望的 CPU 使用率,然后利用一个循环来进行 CPU 使用率的占用。这里使用了 `for /l` 命令来模拟占用 CPU 资源,请确保输入的值在 1 到 100 之间。 注意:由于批处理语言限制,这种方式并不能真正精确地达到指定的 CPU 使用率,而只是在循环中占用了指定的比例的 CPU 资源。实际 CPU 使用率还会受到其他因素的影响。 希望以上回答能满足您的需求,如有任何问题,请随时与我联系。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值