
Python
JenKinJia
做大做强,再创辉煌
展开
-
Python opencv读取深度图,网格化显示深度
【代码】Python opencv读取深度图,网格化显示深度。原创 2024-06-07 11:32:11 · 568 阅读 · 0 评论 -
YOLOV5-Lite在虚拟机中出现UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xf0 in position 9: ordinal no
YOLOV5-Lite在虚拟机中出现编码问题的错误原创 2022-12-01 09:41:42 · 437 阅读 · 1 评论 -
linux 更换python环境后出现ModuleNotFoundError: No module named ‘pip._internal.cli.main‘
python -m ensurepip python -m pip install --upgrade pip原创 2022-09-20 15:25:54 · 597 阅读 · 0 评论 -
CUDA C并行编程--查询设备信息
#include <cuda_runtime.h>#include <cuda_runtime_api.h>#include <stdio.h>int main(int argc, char** argv){ printf("%s starting ...\n", argv[0]); int deviceCount = 0; cudaError error_id = cudaGetDeviceCount(&deviceCoun...原创 2022-05-12 15:30:57 · 372 阅读 · 0 评论 -
磁盘空间充足 却出现OSError: [Errno 28] No space left on device: ***
1、出现这个问题时,最直观的想法肯定是先看看自己的磁盘是否满了,df -h查看即可,如果磁盘快满了,适当清理空间即可。2、另外一个问题,可能是文件夹或者文件的个数过多,导致linux系统innode不足,这时可以通过删除不需要的文件或者文件夹来解决。PS:我的问题就是出现在这里。...原创 2022-05-12 09:35:36 · 3116 阅读 · 0 评论 -
Python 解压多个zip,rar,...文件
pip install zipfilepip install rarfile先安装上面的两个包import osimport zipfileimport rarfilefile_dir = "./422XSZ"file_list = os.listdir(file_dir)for file_name in file_list: # 循环读文件 print("doing", file_name) if file_name.endswith(".zip"):原创 2022-05-11 14:21:30 · 399 阅读 · 0 评论 -
Python 目标检测 YOLO 去除过小的目标标签
import osimport cv2# train 训练集上,通过过滤宽高小于等于的15的目标,过滤掉的数目是[65857, 15275, 38775, 1372, 15, 0]# val 训练集上,通过过滤宽高小于等于的15的目标,过滤掉的数目是[9664, 2755, 3705, 343, 15, 0]img_path = "/data/***/datasets/ktxx-auth/images/train/"label_path = "/data/***/datasets/ktxx-.原创 2022-05-11 11:25:20 · 1402 阅读 · 0 评论 -
YOLO多尺度测试,原图像太大,拆分
import osimport cv2from tqdm import tqdmdef get_imgs_pos(img_w, img_h, cut_w, cut_h, w_stride, h_stride): imgs_pos = [] for beg_w in range(0, i原创 2022-05-11 11:07:19 · 2605 阅读 · 2 评论 -
YOLO 数据增强 多尺度训练(将原来较大数据拆分为多个小的数据进行训练),实测效果较为显著
import osimport cv2from tqdm import tqdmdef get_imgs_pos(img_w, img_h, cut_w, cut_h, w_stride, h_stride): imgs_pos = [] for beg_w in range(0, img_w, w_stride): for beg_h in range(0, img_h, h_stride): x0, y0 = beg_w, beg_h .原创 2022-05-11 10:59:11 · 2057 阅读 · 1 评论 -
YOLOV5 训练中出现train: WARNING: Ignoring corrupted image and/or label : setting an array ele
这种问题大概是数据的问题,这里我出现该警告的原因是:制作的YOLO标签文件,存在单行数字个数不为5的情况,如下所示这个问题是在转换数据集格式的时候,编程出现的问题,想办法改掉这个问题,重新生成数据集即可。...原创 2022-05-11 10:35:34 · 5763 阅读 · 0 评论 -
Python 数据集拆分并修改图像格式
import osimport shutilimport randomfrom PIL import Imageroot_dir = "/data/jjg/codes/datasets/M3FD_Detection/"imgs_dir = os.path.join(root_dir, "images")labs_dir = os.path.join(root_dir, "labels")img_train = "/data/jjg/codes/datasets/zzbs-hw/image.原创 2022-05-11 09:38:18 · 699 阅读 · 0 评论 -
Python 将M3FD数据集格式转为YOLO格式
M3FD从VOC格式转YOLO格式的代码import osimport xml.etree.ElementTree as ETimport timefrom shutil import copyfilefrom tqdm import tqdm"""本代码这里默认是处理的M3FD数据集将该数据集由VOC格式转换成YOLO格式同时将文件重命名存储同时过滤了自己用不到的类别使用该代码前,建议稍微读一下,清楚代码中的限制,避免不必要的麻烦"""classes = ["People"原创 2022-05-10 15:55:04 · 1621 阅读 · 1 评论 -
Python拆分SCUT FIR Pedestrian Dataset为图像
import os.pathimport fnmatchimport shutildef open_save(file, savepath): # read .seq file, and save the images into the savepath f = open(file, 'rb') string = f.read().decode('latin-1') splitstring = "\xFF\xD8\xFF\xE0\x00\x10\x4A\x46.原创 2022-05-10 11:05:01 · 414 阅读 · 0 评论 -
Northwestern-UCLA数据处理成AGCN网络可用的输入数据
import argparseimport picklefrom tqdm import tqdmimport syssys.path.extend(['../'])from data_gen.preprocess import pre_normalizationtraining_cameras = ['1', '2']max_body_true = 1max_body = 2num_joint = 20max_frame = 202import numpy as npim.原创 2022-05-01 10:59:28 · 1251 阅读 · 3 评论 -
Python 扣取yolo标签中的图像示例并保存
import cv2import osfile_path = "./ktxx"save_path = "./plate_num"imgs_list = os.listdir(file_path)for img_name in imgs_list: if img_name.endswith(".jpg"): image = cv2.imread(os.path.join(file_path, img_name)) img_w, img_h = image.原创 2022-01-08 16:49:34 · 1887 阅读 · 0 评论 -
Python 读取YOLO标签并在图像上展示
# coding=utf-8import numpy as npimport cv2label_path = r"E:\CodesWS\Pycharm\Test\uav_recog\ktxx\1638236311696.jpg"image_path = r"E:\CodesWS\Pycharm\Test\uav_recog\ktxx\1638236311696.txt"# 坐标转换,原始存储的是YOLOv5格式# Convert nx4 boxes from [x, y, w, h] n.原创 2022-01-08 16:48:14 · 4444 阅读 · 0 评论 -
Python 查看FAIR1M数据集 并展示图像及标签
import cv2import osimport randomimport xml.etree.ElementTree as ETimport tkinter as tkfrom PIL import Image, ImageTkimgs_path = r"E:\data\FAIR1M\test\images"labels_path = r"E:\data\FAIR1M\test\test"classes = ['Boeing737', 'Boeing747', 'Boeing777'.原创 2022-01-08 16:46:20 · 1089 阅读 · 1 评论 -
Python FAIR1M数据集 计算框的重叠 并去重 美化
from shapely.geometry import Polygonimport numpy as npfrom xml.etree import ElementTree as ETfrom xml.etree.ElementTree import ElementTree, Elementimport osiou_thr = 0.8xmls_path = r"E:\data\FAIR1M\test\labelXmlPre"xml_list = os.listdir(xmls_path).原创 2022-01-08 16:45:26 · 405 阅读 · 0 评论 -
Python手动修改FAIR1M数据集标签类别
import cv2import osimport randomimport xml.etree.ElementTree as ETimport tkinter as tkfrom PIL import Image, ImageTkimgs_path = r"E:\data\FAIR1M\test\images"labels_path = r"E:\data\FAIR1M\test\test"classes = ['Boeing737', 'Boeing747', 'Boeing777'.原创 2022-01-08 16:42:47 · 961 阅读 · 1 评论 -
Python 裁剪视频为图片
import cv2import timedef split_frames(file_path, save_path, interval_time): cap = cv2.VideoCapture(file_path) # 打开视频文件 num = 9000 while True: success, img = cap.read() if not success: break if num % int.原创 2022-01-08 16:38:48 · 1375 阅读 · 0 评论 -
Python 修改yolo标注文件的类别编号
import oslabel_path = r"C:\Users\DELL\Desktop\huanghe"label_path_new = r"C:\Users\DELL\Desktop\huanghe_new"label_list = os.listdir(label_path)count = 0for label_file in label_list: if label_file.endswith(".txt"): with open(os.path.join.原创 2022-01-08 16:33:00 · 973 阅读 · 0 评论 -
Python 同时修改yolo的图片名和标签名
import osimport timefile_path = r"C:\Users\DELL\Desktop\huanghe_new"file_list = os.listdir(file_path)for file in file_list: if file.endswith(".txt"): print(file) save_name = str(round(time.time() * 1000)) os.rename(os.path.原创 2022-01-08 16:31:50 · 795 阅读 · 0 评论 -
模糊图像,生成新文件并修改label文件
import osimport cv2import shutilfrom xml.etree import ElementTree as ETimgs_path = "./FAIR1M/train/images"labels_path = "./FAIR1M/train/labelXml"save_img_path = "./FAIR1M/train/images-blur"save_label_path = "./FAIR1M/train/labelXml-blur"imgs_lis.原创 2021-09-23 15:05:52 · 134 阅读 · 0 评论 -
xml to DOTA
'''2020/6/15,标注文件转换xml转txt(vol to yolo)转完后需添加labels文件,即数字序号对应的标签名。'''import xml.etree.ElementTree as ETimport numpy as npimport pickleimport osimport cv2from os import listdir, getcwdfrom os.path import joinclasses = ['Boeing737', 'Boeing747',.原创 2021-09-15 16:57:39 · 937 阅读 · 0 评论 -
yolo 形式的数据转xml格式 带美化
# import xml.etree.ElementTree as ET# import shutil, os# tif_path = '/home/qqh/datasets/Fine-grained Object Recognition in High-Resolution Optical Images/test/images/'# filelist = os.listdir(tif_path)# # print(filelist)# for tiffile in filelist:#..原创 2021-09-15 16:54:40 · 281 阅读 · 0 评论 -
提取 DOTA数据集中的部分类别
import osimport shutildota_img_path = "./DOTA/DOTA-v1.5/train/images/images/images/"dota_label_path = "./DOTA/DOTA-v1.5/train/labelTxt-v1.5/"save_img_path = "./FAIR1M/train/images-f_d/"save_label_path = "./FAIR1M/train/labelTxt-f_d/"extra_cls = [".原创 2021-09-15 16:53:07 · 968 阅读 · 2 评论 -
记录一次YOLOV5遇到的问题
1、 出现这个问题,首先先看一下是不是自己的label出现了问题,label的起始值应该是从0开始才对,如果从1开始的,大概率是因为这个问题导致的。2、如果上面没有解决问题,可能是因为在训练自己的数据时,划分训练数据和测试数据出了问题,例如我这里有1700个数据,共30类数据,我用了前1200个作为了训练集,后面的500作为了测试集,很有可能是因为前1200个数据没有全部包含到30类,导致在测试阶段出现了以上问题。解决办法:可以通过重新划分数据集进行尝试,例如把训练集划分的多一点,划分到前160..原创 2021-08-13 11:22:17 · 1293 阅读 · 0 评论 -
opencv-python cv2.minAreaRect角度的问题
最近在做目标检测的相关问题,当用到opencv中的minAreaRect函数时,并不像其他博客里面说的会产生负的角度,个人很是疑问,经过一番查找,发现可能是opencv的版本问题,在一下博客中看到的:连接更改一下版本,确实问题解决了。。更改前:更改后:...原创 2021-07-27 09:15:37 · 621 阅读 · 0 评论 -
Python OpenCV根据根据中心点、宽高、倾斜角度画矩形
最近在做目标识别的算法,需要对给定的数据进行格式转换,需要先画出来看看import cv2import numpy as npimport mathdef draw(img, result): # 下面几个参数,可能需要根据自己的数据进行调整 x = int(result[0][0]) # 矩形框的中心点x y = int(result[0][1]) # 矩形框的中心点y angle = result[2] # 矩形框的倾斜角度(长边相原创 2021-07-26 10:09:28 · 6746 阅读 · 2 评论 -
安装opencv-python时运行到 running setup.py bdist_wheel for opencv-python后一直在卡住不动
第一个错误安装opencv-python出错:Problem with the CMake installation, aborting build. CMake executable is cmake解决办法:pip3 install cmake第二个错误安装opencv-python时运行到 running setup.py bdist_wheel for opencv-python后一直在卡住不动运行以下两行:pip3 install --upgrade pippip insta.原创 2021-05-14 13:57:43 · 3590 阅读 · 1 评论 -
使用“pip list”出现-bash: pip3: command not found
我出现这个问题是在容器中使用Python时出现的,容器中默认安装有Python2和Python3,可直接通过在命令行输入python或者python3来验证自己的容器中是否装有python2.x和python3.x的环境。但在容器中运行pip list或者是pip3 list时会出现**-bash: pip3: command not found**的问题,此时可通过安装pip来解决。安装python2.x的pip:apt-get install python-pip安装python3.x的pip:原创 2021-05-14 10:02:10 · 4134 阅读 · 0 评论 -
Python将视频中的帧保存为图片
安装一下opencv就可以用import cv2def getFrame(videoPath, svPath): cap = cv2.VideoCapture(videoPath) count = cap.get(7) # 获取总帧数 numFrame = 0 while True: if cap.grab(): flag, frame = cap.retrieve() if not flag:原创 2021-05-07 11:19:38 · 581 阅读 · 0 评论 -
Python OpenCV目标跟踪,可在视频播放过程中选择标定框
Python OpenCV目标跟踪,可在视频播放过程中选择标定框这里用到的OpenCV最好是安装opencv-contrib-python,用pip install opencv-contrib-python安装即可。主要实现的功能如下:(这里本人只是为了做demo,OpenCV自带的目标跟踪效果并不是很好)在视频播放过程中选择要跟踪的目标(按键盘上的“0”键选择目标)可取消跟踪目标(按键盘上的“1”键取消跟踪目标)改变跟踪框的颜色并显示车牌信息(按“2”,我这里是改为了绿色,可显示汉字,这里是原创 2021-05-07 11:05:59 · 2851 阅读 · 3 评论 -
Python 代码 由YOLO数据格式转换成Kitti数据集的格式
最近在研究DeepStream,其中在学习tlt_cv_examples中的迁移训练例子时,用到的数据集都是kitti数据格式,因此想训练自己的数据的话,需要将自己的YOLO格式的label文件转成kitti数据格式的label,然后在网上看到了一个博主的例子,链接如下:添加链接描述非常感谢博主贡献的代码,但在实验中发现当一个YOLO的label文件中存在多行bounding box的数据时,始终只能转换一行,还有对一些其他的小问题进行了修改,因此在博主的代码基础上进行了修改。代码如下:# Yolo原创 2021-04-27 15:37:27 · 1058 阅读 · 10 评论 -
docker端口映射,并暴露端口
本文是记录用来Moba或者Xshell等客户端连接docker中的容器并远程登录。在进行端口映射前,最好先将容器进行停止掉,实验中发现不停止有时会设置失败。在linux服务器上用“docker stop 容器Id“进行停止。如果想用客户端直接连接到容器,必须要进行端口映射,这里在Linux服务器上进入如下路径:/var/lib/docker/containers接着在进入容器Id的文件夹。例如我这里是“f79386e373740865f8fad5ff8807a6fd0a0139217ab58725原创 2021-04-26 11:08:02 · 2413 阅读 · 0 评论 -
Markdown测试
MarkDown学习二级标题三级标题四级标题两边用两个星号是加粗两边用一个星号是斜体三个星号是即加粗又斜体两边都是两个波浪是删除引用家居安静安静安静姐分割线三个横线是分割线图片[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-10uxkyyy-1618756484231)(E:\Desktop\capture_20210331083554404.bmp)]超链接点击跳转列表QQQhhhfSSdddjjj表格原创 2021-04-18 22:36:03 · 74 阅读 · 0 评论 -
2020校招求职学习笔记
深度学习部分过拟合与欠拟合欠拟合指模型不能在训练集上获得足够低的训练误差; 过拟合指模型的训练误差与测试误差(泛化误差)之间差距过大;反映在评价指标上,就是模型在训练集上表现良好,但是在测试集和新数据上表现一般(泛化能力差);降低过拟合风险的方法所有为了减少测试误差的策略统称为正则化方法,这些方法可能会以增大训练误差为代价。数据增强 图像:平移、旋转、缩放 利用生成对抗网络(GAN)生成新数据 NLP:利用机器翻译生成新数据 降低模型复杂度 神经网络:减少网络.原创 2021-02-03 20:20:20 · 1397 阅读 · 1 评论 -
python使用opencv、vlc对直播连接进行视频播放
安装opencv:pip installopencv-contrib-python==4.3.0.36pip installpython-vlc==3.0.10114注:下载慢的话,加上清华源的链接。直接使用python的vlc的工具进行播放:import sysimport http.clientimport timefrom vlc import VideoMarqueeOption, Position, EventType, Instanceclass RT...原创 2020-07-22 11:06:01 · 3060 阅读 · 0 评论 -
python opencv截取视频
import cv2video_path = "D:/Data/无人机视频/DCIM/100MEDIA/DJI_0002.MOV"video = cv2.VideoCapture(video_path)# 需要明确视频保存的格式fourcc = cv2.VideoWriter_fourcc(*'XVID')fps = video.get(cv2.CAP_PROP_FPS)print('帧率:%d' % fps)size = (int(video.get(cv2.CAP_PROP_FRAM.原创 2022-05-20 09:14:36 · 865 阅读 · 0 评论 -
python socket实现视频传输,服务端加上了目标跟踪,初试帧,手动框选框,后续的跟踪结果会传到socket的client端
首选需要再python里安装socket包,自行百度,网上很多。然后复制上代码之后,看看还缺啥,安装上就先行。该部分借鉴的博客:python实现opencv+scoket网络实时图传:https://blog.youkuaiyun.com/T_infinity/article/details/79893318使用OpenCV实现单目标跟踪:https://blog.youkuaiyun.com/LuohenYJ/article/details/89029816我修改的后的代码,实测可运行的:1、serve.原创 2020-07-02 09:31:56 · 693 阅读 · 0 评论