
玩转代码
文章平均质量分 72
景唯acr
细粒度分类,目标检测,pyqt5
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
YOLOv5检测界面-PyQt5实现
YOLOv5检测界面的简单实现原创 2021-09-27 14:30:40 · 61495 阅读 · 230 评论 -
python实现不同电脑之间视频传输
imageZMQ库链接:https://github.com/jeffbass/imagezmq该库原本是用于树莓派上的视频传输,其包含很多示例,有兴趣可以去看看。确保发送端和接收端接在同一个局域网下。发送端import socketimport timeimport cv2import imagezmqimport tracebackimport simplejpeg# capture=cv2.VideoCapture(0) # 获取摄像头视频capture=cv2.VideoC原创 2021-06-23 19:48:04 · 3728 阅读 · 7 评论 -
pytorch加载nn.DataParallel训练的模型出现的问题
nn.DataParallel分布式训练后,如果直接使用torch.save(model.state_dict(), model_out_path)保存模型,等到再加载模型,可以将需要加载模型的网络也弄成分布式训练。分布式训练时,最好使用torch.save(model.module.state_dict(), model_out_path)保存模型,这样等到需要测试网络时,加载模型时用model.load_state_dict(torch.load(PATH, map_location=device))原创 2020-09-15 22:09:11 · 5188 阅读 · 3 评论 -
读取cifar100并将图片按类别保存
运行代码后会得到两个文件夹,一个是训练集(50000张图片),一个是测试集(10000张图片),这两个文件夹下都会有100个子文件夹。import osfrom skimage import ioimport torchvision as tvimport numpy as npimport torchdef Cifar100(root): character_train = [[] for i in range(100)] character_test = [[] for原创 2020-07-18 22:13:46 · 2768 阅读 · 1 评论 -
VOC类型的xml标签在训练前的清洗工作
标注工具labelimg在收集好所有图片以及对应的标签后,需要对数据进行清洗工作。包括剔除没有标签的图片,剔除没有图片的标签,统计数据中的标签名以及数量,重命名打错字的标签,合并标签,标签替换等等。数据清洗1. 统计数据中标签名有时,可能出现标错标签名的情况,如有些 ‘peroson’ 的标签名打错了,写成了 ‘people’,或者同一类别中,有的写了下划线,有的使用空格表示,例如 ‘cargo_house’ 和 ‘cargo house’ 。统计出所有标签名以及类别数后,我们能够很方便的将错误找原创 2020-07-08 15:54:08 · 1150 阅读 · 3 评论 -
合并使用labelimg标注的同一张图片的两个不同xml标签
待解决问题对于某个文件夹下的所有图片,使用labelimg进行标注,获得voc类型的xml格式的标签。由于在进行标注工作时,将不同的类别分开标注了,得到标签文件夹有两个,第一个文件夹存储了类别 a 和类别 b 的 labels ,第二个文件夹存储了类别 c, d, e… 的 labels 。现在想要将相同图片的标签进行,即原本一张图片可能有两个对应的 xml,现在要使得一张图片只有一个对应的 xml。目标效果原图:标签1标签2标签合并解决思路通过分析 xml 文件,得知关键的标签信息存在于原创 2020-07-01 21:40:46 · 4423 阅读 · 9 评论 -
opencv-python将视频转为图片,将图片转为视频
opencv-python将视频转为图片,将图片转为视频原创 2020-06-24 08:45:39 · 4019 阅读 · 1 评论 -
ValueError: some of the strides of a given numpy array are negative.的解决方法
错误代码:使用opencv读取图片后,转换颜色通道,再转为tensorimg = img[:, :, ::-1] # BGR --> RGBtransform = transforms.Compose([ transforms.ToTensor(), transforms.Normalize([0.4948052, 0.48568845, 0.44682974], [0.24580306, 0.24236229, 0.2603115]) ])原创 2020-06-01 14:13:16 · 2258 阅读 · 0 评论 -
img[::-1,:,:]、img[:,::-1,:]、img[:,:,::-1]是啥?
如果使用了opencv读取图像作为网络的输入时,经常能够看到 img = img[:,:,::-1] 的一行代码。原因是opencv读取图像时,图片的颜色通道为 GBR,为了与原始图片的RGB通道同步,需要转换颜色通道。img = img[:,:,::-1] 便能达到该效果。当使用PIL或者scipy读取图片,就不会出现这种问题,也就不需要转换颜色通道了。三种读取图片的方式比较import cv2import scipy.miscfrom PIL import Imageimport num原创 2020-06-01 11:23:48 · 6014 阅读 · 0 评论 -
选择排序算法以及c++实现
算法步骤:在未排序序列中找到最小(大)元素,存放到序列的起始位置。从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列 的末尾。重复第2步,直到所有元素均排序完毕。动图演示c++实现...原创 2020-04-12 15:23:06 · 251 阅读 · 0 评论 -
opencv-python给图片添加半透明mask
示例中,mask为矩形框,如果是不规则点的分割mask,可以使用cv2.fillPoly()函数代替cv2.rectangle().原始图片:import numpy as npimport osimport cv2def put_mask(img_path,output_fold): # 1.读取图片 image = cv2.imread(img_path) ...原创 2019-12-29 21:53:42 · 23797 阅读 · 6 评论 -
Ubuntu16.04中Anconda2/Anconda3的安装使用和tensorfow的配置
1.下载安装包:在官网下载就行了,下载速度挺快的。链接 https://www.continuum.io/downloads2.安装:进入下载目录,一般情况下在 Download 目录下终端输入:bash Anaconda2-2018.12-Linux-x86_64.sh(后面的.sh文件是下载的安装包名)一路yes过去就行。3.启动anaconda:终端输入:anaconda-n...原创 2019-04-07 22:25:11 · 1597 阅读 · 0 评论 -
迁移学习:keras + vgg16 + cifar10 实现图像识别
框架:keras数据集:CIFAR10模型:vgg16注:vgg16模型的输入图像尺寸至少为 48*481.模型结构Layer (type) Output Shape Param #input_1 (InputLayer) (None, 64, 64, 3) 0block1_conv1 (C...原创 2019-02-26 21:45:52 · 8733 阅读 · 1 评论