ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

week 2020.12.27-2020.12.31

2020-12-31 17:03:37  阅读:230  来源: 互联网

标签:week 文件 31 cap num 2020.12 image path glob


自由学习,大佬给了一个脚本,用在yolov5中,实现预测完图像生成图像对应的xml文件,方便在labelimage中进行查看:

View Code

直接调用模型生成的.pt,检测完结果生成跟检测图像对应得xml文件。

学习到了glob函数的使用:是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索,支持通配符操作,*,?,[]这三个通配符,*代表0个或多个字符,?代表一个字符,[]匹配指定范围内的字符,如[0-9]匹配数字。

比如:

glob.glob(r'c:\*.txt')

我这里就是获得C盘下的所有txt文件

glob.glob(r'E:\pic\*\*.jpg')

获得指定目录下的所有jpg文件

使用相对路径:

glob.glob(r'../*.py')

接着就是遍历文件夹下所有路径,可以插入使用tqdm(进度条功能):

image_path = glob.glob('data/input/CardDetection/images/*.jpg')
for i in tqdm(image_path):
    image_path = i.replace('\\', '/')
    # print(image_path)
    print(predict(image_path), '/n')
.replace负责将路径中'\'改为‘/’
一个视屏按照帧来分成图片的脚本:
#coding: utf-8
import os
import cv2
from tqdm import tqdm
from glob import glob

if __name__ == "__main__":
    filelists = glob('./little/*.mp4')
    save = './pic/'
    os.makedirs(save, exist_ok=True)
    FPS = 25
    for item in filelists:
        cap = cv2.VideoCapture(item)
        frames = cap.get(cv2.CAP_PROP_FRAME_COUNT)  # 获得视频文件的帧数

        fps = 50
        # 保存图片的帧率间隔
        count = 50
        num = 0
        while(cap.isOpened()):
            ret, img = cap.read()
            if img is None:
                break

            if num % 100*FPS == 0:
                cv2.imwrite(save + str(len(os.listdir(save)) + 1).zfill(5) + '.jpg', img)
            num += 1
            if num == 1:
                print(filelists)
            # print(num)

        cap.release()

写了一个标签文件为.csv格式的转化为yolo格式的脚本,标签文件为下图样式:

View Code


 

标签:week,文件,31,cap,num,2020.12,image,path,glob
来源: https://www.cnblogs.com/cn-gzb/p/14217852.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有