精华内容
下载资源
问答
  • python如何把图片保存到指定路径

    千次阅读 2020-09-25 15:39:55
    image.save(os.path.join(root, face_id + ".jpg")) #image为图片对象()内为路径

    image.save(os.path.join(root,imgname + ".jpg"))

    #image为图片对象()内为路径

    展开全文
  • Python cv指定间隔截取视频帧并保存图像到指定路径 import cv2 import glob import os from datetime import datetime def video_to_frames(path): """ 输入:path(视频文件的路径) """ # VideoCapture视频...

    Python cv指定间隔截取视频帧并保存图像到指定路径

    import cv2
    import glob
    import os
    from datetime import datetime
    
    
    def video_to_frames(path):
        """
        输入:path(视频文件的路径)
        """
        # VideoCapture视频读取类
        videoCapture = cv2.VideoCapture()
        videoCapture.open(path)
        # 帧率
        fps = videoCapture.get(cv2.CAP_PROP_FPS)
        # 总帧数
        frames = videoCapture.get(cv2.CAP_PROP_FRAME_COUNT)
        print("fps=", int(fps), "frames=", int(frames))
    
        for i in range(int(frames)):
            ret, frame = videoCapture.read()
            if i%300 == 1:
    
                cv2.imwrite("D:/pct_1/det/vedio%d.jpg" % (i), frame)
        return
    
    
    if __name__ == '__main__':
        t1 = datetime.now()
        video_to_frames("D:/pct_1/net/ster/w-2.avi")
        t2 = datetime.now()
        print("Time cost = ", (t2 - t1))
        print("SUCCEED !!!")
    
    
    
    展开全文
  • 我们可以使用opencv的函数加上python代码的编写对单个图片进行任意倍数的分割。 直接开始: 首先导入Opencv库 import cv2 然后我们设置分割的倍数 cut_row = 5 # 行切割份数 cut_col = 5 # 列切割份数 接下来读取...

    我们可以使用opencv的函数加上python代码的编写对单个图片进行任意倍数的分割。

    直接开始:

    首先导入Opencv库

    import cv2
    

    然后我们设置分割的倍数

    cut_row = 5   # 行切割份数
    cut_col = 5   # 列切割份数
    

    接下来读取图片(换成你要处理的图片路径)

    original_image = cv2.imread(r'.\路径\xxx.png')
    

    获取图片尺寸

    cutting_step_row = row/cut_row      # 行移动步长
    cutting_step_col = col/cut_col      # 列移动步长
    cutting_row = row/cut_row           # 裁剪图像的行数
    cutting_col = col/cut_col           # 裁剪图像的列数
    index = 1                           # 图片的命名序号
    

    进行处理(记得更换路径)

    # i代表行 j代表列
    # 四张图分别为左上,左下,右上,右下
    for i in range(cut_row):
        for j in range(cut_col):
            print('i=', i)
            print('j=', j)
            y0 = 0 + j * cutting_step_col            # 初始起始点列坐标 + 水平方向移动参数 * 列移动步长
            y1 = cutting_col + j * cutting_step_col  # 初始截至点列坐标 + 水平方向移动参数 * 列移动步长
            x0 = 0 + i * cutting_step_row            # 初始起始点横坐标 + 垂直方向移动参数 * 行移动步长
            x1 = cutting_row + i * cutting_step_row  # 初始截至点列坐标 + 垂直方向移动参数 * 行移动步长
            # 切割
            cropped = original_image[int(y0):int(y1), int(x0):int(x1)]
            # 保存
            if index < 10:
                cv2.imwrite('\路径\' + str(index) + ".jpg", cropped)
                index = index + 1
            elif index < 100:
                cv2.imwrite('\路径\' + str(index) + ".jpg", cropped)
                index = index + 1
    

    结果展示

    原图:

    在这里插入图片描述

    处理以后的结果(分割为9份):

    在这里插入图片描述

    处理以后的结果(分割为25份):

    在这里插入图片描述

    整体代码(记得修改路径)

    import cv2
    
    # 设置切割份数
    cut_row = 5   # 行切割份数
    cut_col = 5   # 列切割份数
    
    # 读取图片
    original_image = cv2.imread(r'C:\Users\Administrator\Desktop\fg\yt\0002.png')
    # 获取图片尺寸
    row, col, cha = original_image.shape
    print('row=', row)
    print('col=', col)
    print('cha=', cha)
    # 设置图片切割的步长及切割后图片的尺寸
    cutting_step_row = row/cut_row      # 行移动步长
    cutting_step_col = col/cut_col      # 列移动步长
    cutting_row = row/cut_row           # 裁剪图像的行数
    cutting_col = col/cut_col           # 裁剪图像的列数
    index = 1                           # 图片的命名序号
    # i代表行 j代表列
    # 四张图分别为左上,左下,右上,右下
    for i in range(cut_row):
        for j in range(cut_col):
            print('i=', i)
            print('j=', j)
            y0 = 0 + j * cutting_step_col            # 初始起始点列坐标 + 水平方向移动参数 * 列移动步长
            y1 = cutting_col + j * cutting_step_col  # 初始截至点列坐标 + 水平方向移动参数 * 列移动步长
            x0 = 0 + i * cutting_step_row            # 初始起始点横坐标 + 垂直方向移动参数 * 行移动步长
            x1 = cutting_row + i * cutting_step_row  # 初始截至点列坐标 + 垂直方向移动参数 * 行移动步长
            # 切割
            cropped = original_image[int(y0):int(y1), int(x0):int(x1)]
            # 保存
            if index < 10:
                cv2.imwrite('C:\\Users\\Administrator\\Desktop\\fg\\before\\000' + str(index) + ".jpg", cropped)
                index = index + 1
            elif index < 100:
                cv2.imwrite('C:\\Users\\Administrator\\Desktop\\fg\\before\\00' + str(index) + ".jpg", cropped)
                index = index + 1
    
    展开全文
  • 如何使用Python+Opencv对多个图片进行任意倍数下采样并保存到指定路径 使用Python代码+Opencv库对多张图片下采样并保存到指定路径 对单个图片进行下采样很容易,我们可以使用opencv的函数。。 我们对Markdown编辑器...

    Python+Opencv对多个图片进行任意倍数下采样并保存到指定路径

    使用Python代码+Opencv库对多张图片下采样并保存到指定路径

    对单个图片进行下采样很容易,我们可以使用opencv的函数cv2.pyrDown(),那么多个图片该怎么做呢?经过我2个小时的代码编写(小白勿喷),终于总结了一套适用于任何图像,任何倍数,任何数量图像的批量下采样方法。

    废话不多说,直接开始:

    首先导入必要的库

    import cv2
    import os.path
    

    然后我们读取文件夹里面的图像数量 并返回filenum,这里的路径到文件夹即可,注意路径中的分隔符不能为 \ ,(可以为 / 或 \ ),否则会报错

    def countFile(dir):
        # 输入文件夹
        tmp = 0
        for item in os.listdir(dir):
            if os.path.isfile(os.path.join(dir, item)):
                tmp += 1
            else:
                tmp += countFile(os.path.join(dir, item))
        return tmp
    
    filenum = countFile("D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4")    # 返回的是图片的张数
    print(filenum)
    

    注意这里的index为0或者1(为0时后面的代码中if index<9,为1时if index <10,因为index决定了图片的初始索引),这个值也可以自己设置。n的值也很重要,决定了几倍下采样,在后面的代码中也有体现。

    # filenum
    n = 4
    index = 1   #保存图片编号
    num = 0     #处理图片计数
    

    主程序:因为我的输入图片名为0001x4.png-0900x4.png,输出图片也是0001x4.png-0900x4.png,所以我得分情况讨论输入输出,各位程序员可以按自己得需求修改此代码,n的值可以决定是2倍下采样还是4倍下采样,程序员可以再添加函数修改,以进行多倍下采样。

    for i in range(1,filenum+1):
        ########################################################
        # 1.读取原始图片
        if index < 10:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\000"+str(i)+"x4.png"
        elif index < 100:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\00"+str(i)+"x4.png"
        else:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\0"+str(i)+"x4.png"
        print(filename)
        original_image = cv2.imread(filename)
        # 2.下采样
        if n == 2:
            img_1 = cv2.pyrDown(original_image)
        if n == 4:
            img_1 = cv2.pyrDown(original_image)
            img_1 = cv2.pyrDown(img_1)
        #3.将下采样图片保存到指定路径当中
        if index < 10:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\000" + str(index) + "x4.png", img_1)
        elif index < 100:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\00" + str(index) + "x4.png", img_1)
        else:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\0" + str(index) + "x4.png", img_1)
            
        num = num + 1
        print("正在为第"+ str(num) + "图片采样......")
        index = index + 1  
    

    结果展示

    在这里插入图片描述

    原图大小:

    在这里插入图片描述

    下采样以后:

    在这里插入图片描述

    程序的全部代码

    import cv2
    #import def_Gaussian as dg
    #import time
    import os.path
    #import glob
    
    #####################################################################################################################
    #读取文件夹里面的图像数量 并返回filenum
    def countFile(dir):
        # 输入文件夹
        tmp = 0
        for item in os.listdir(dir):
            if os.path.isfile(os.path.join(dir, item)):
                tmp += 1
            else:
                tmp += countFile(os.path.join(dir, item))
        return tmp
    
    filenum = countFile("D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4")    # 返回的是图片的张数
    print(filenum)
    
    # filenum
    n = 4
    index = 1   #保存图片编号
    num = 0     #处理图片计数
    for i in range(1,filenum+1):
        ########################################################
        # 1.读取原始图片
        if index < 10:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\000"+str(i)+"x4.png"
        elif index < 100:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\00"+str(i)+"x4.png"
        else:
            filename = "D:\\model\\super-resolution\\.div2k\images\\DIV2K_train_LR_bicubic\\X4\\0"+str(i)+"x4.png"
        print(filename)
        original_image = cv2.imread(filename)
        # 2.下采样
        if n == 2:
            img_1 = cv2.pyrDown(original_image)
        if n == 4:
            img_1 = cv2.pyrDown(original_image)
            img_1 = cv2.pyrDown(img_1)
        #3.将下采样图片保存到指定路径当中
        if index < 10:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\000" + str(index) + "x4.png", img_1)
        elif index < 100:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\00" + str(index) + "x4.png", img_1)
        else:
            cv2.imwrite("D:\\model\\super-resolution\\.div2k\\1\\0" + str(index) + "x4.png", img_1)
            
        num = num + 1
        print("正在为第"+ str(num) + "图片采样......")
        index = index + 1  
    
    展开全文
  • Python保存图片到桌面

    千次阅读 2020-05-21 14:59:24
    保存图片到固定路径: plt.savefig('C:/Users/14634/Desktop/shares_bar.png') plt.show() 注意路径斜杠反过来,并且注意桌面路径的书写方式; plt.savefig()写在 plt.show()之前
  • Python - 截取指定帧数间隔指定大小的视频,并保存图片到指定位置 环境:Python3.6 依赖库:shutil、os、cv2 视频如下: 代码如下: # -*- coding: utf-8 -*- import shutil import os import cv2 os...
  • python代码 import os dirname = "E:\\MyCode\\fushikang2019\\ImgOCT\\mycode\\" items = os.listdir(dirname) file = open('test.list','w') for item in items: path = os.path.join(dirname,item) # prin...
  • 前提:安装好python ,配置好...usr/bin/pythonimport cv2 #使用opencv按一定间隔截取视频帧,并保存图片 vc = cv2.VideoCapture('D:\\SomkeDetection\\otherSamples\\mivia_fire\\fire1.avi') #读入视频文件c=...
  • 客户端,如何将路径信息与图片信息, 拆分,大多数是直接拆分,并没有进行转码,这里试了几次,没走通,转码之后,问题解决。 发送过程较为简单,就是普通的转码,字符拼接。 话不多说,看代码 服务端(接收文件) ...
  • python不久,所以先记录一个爬取图片的方式,并保存本地指定路径下。当然不一定会是最简单的方式,就是习惯这么起标题。但,肯定是我使用起来感觉最简单的。 需要单独安装的第三方模块有三个: pip install ...
  • Python http 下载文件到指定路径

    千次阅读 2019-09-11 11:26:48
    import urllib.request import os url = "https://avatar.csdnimg.cn/AAA/hello.jpg" #图片路径。 dir = os.getcwd(); #当前工作目录。 urllib.request.urlretrieve(url, dir...如果指定路径的话必须指定名字 也可...
  • 刚学python不久,所以先记录一个爬取图片的方式,并保存本地指定路径下。当然不一定会是最简单的方式,就是习惯这么起标题。但,肯定是我使用起来感觉最简单的。 需要单独安装的第三方模块有三个: pip install ...
  • python相对路径和绝对路径导致FileNotFoundError: [WinError 3] 系统找不到指定路径 首先恭喜广大程序猿入坑~ 看到这说明你已经有相对的基础了,离聪明绝顶又近了一步~ 当你看到这可能会发现这不仅仅只是一篇关于...
  • python 读取指定路径下的图像和视频文件 ** 读取指定路径下的图片:imread(path) 打开指定路径下的视频文件:VideoCapture(path) 举个栗子----打开视频并读取每一帧图片,将视频转换为4维的矩阵: def load_video...
  • python批量修改图片尺寸,并保存指定路径

    万次阅读 多人点赞 2018-08-14 12:44:36
    import os from PIL import Image filename = os.listdir("D:\\Work\\process\\样本处理\\polyu-all-train") base_dir = "D:\\Work\\process\\样本处理\\polyu-all-train\\"...
  • urllib.request.urlretrieve(url, '/home/xuliming/PycharmProjects/tensorflow_learning/data_self/' + i_char + '.' + lable_char + '.' + 'jpg')# 这里的路径只能使用字符型,所以先将两个参数转成字符格式 ...
  • Python解压zip压缩包到指定文件路径

    千次阅读 2021-05-01 11:15:05
    Python解压zip压缩包到指定文件路径,给大家介绍zipfile库的简单使用 ZIP文件格式是一种常见的归档和压缩标准。这个模块提供了创建、读取、写入、追加和列出ZIP文件的工具。 import zipfile import os """ src_...
  • 在YOLOv3中是以txt格式进行读取,所以利用python来生成所有图片路径的txt文件。 二、代码实现 import os #paths=['coco2014','Stanford','vehicleplate'] paths=['VOC2019'] f=open('train_all.txt', 'w') fo...
  • dirs = 'result/10' # 想要保存路径 if not os.path.exists(dirs): # 如果不存在路径,则创建这个路径,关键函数就在这两行,其他可以改变 os.makedirs(dirs) path = dirs+'/'+'img.jpg' # 将文件路径与文件名...
  • 前言:这篇文件写python实现爬取网站图片,视频动画到指定文件夹。运行环境:python3 +requests模块搭建python环境参考:http://blog.csdn.net/ling_mochen/article/details/79314118安装requests模块参考:...
  • 上一篇https://blog.csdn.net/qq_34192019/article/details/96473181使用opencv获取图片 首先连续拍多张 //定义抓取的图像数,10修改大一点,100或者1000 ...保存指定路径下 if (saveImages) ...
  • python保存图片的常用方法

    千次阅读 2021-02-04 10:36:37
    保存图片的常用方法 1.PIL的保存图片方法 path = r"./001.jpg" #图片路径 img = Image.open(path) #打开图片 img.save("1.jpg") #将图片保存为1.jpg 2.opencv保存图片 path = r"./001.jpg" #图片路径 #img = cv....
  • 我在爬取网站图片的时候,遇到了 无论是添加请求头参数还是增加ip代理池也好,抓取的图片都是一个无关缩略图,限于技术,无法实现进一步的突破了,只能选择selenium 模拟人的行为 ,通过 点击右键,保存图片的方式...
  • import os import shutil dir = os.getcwd() print(dir) filename = "path.txt" path = os.path.join(dir,filename) print(path) f2 = open(path,'r') for item in f2: res = item.split("=") ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 31,469
精华内容 12,587
关键字:

python保存图片到指定路径

python 订阅