图像处理
苏打水的杯子
北航虚拟现实国家重点实验室博士研究生
展开
-
CPICS-LBP: a novel gradient Feature descriptor
此论文是本人2019年发表在IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT 上的一篇文章,为了帮助大家理解此处公布代码。原创 2023-04-22 23:46:14 · 97 阅读 · 1 评论 -
【推荐研究方向(1)】小样本开集目标检测(few-shot open-set object detection)
小样本开集目标检测,使用少量已知类样本训练模型,使得模型既能够检测小样本已知类又能够检测未知类物体。原创 2023-02-05 09:07:01 · 1995 阅读 · 2 评论 -
目标检测AP计算
一、查全率和召回率计算针对目标检测查全率和召回率计算:其中GT表示ground truth的数量。二、AP计算 假如目标类别为Dog,有5张照片,共包含7只Dog,也即GT(GroundTruth)数量为7,经模型预测,得到了Dog的10个预测结果,选定IoU_threshold=0.5,然后按confidence从高到低排序,如下图。其中,BB表示BoundingBox序号,GT=1表示有GT与所预测的BoundingBox的IoU>=IoU_threshold,...原创 2022-01-12 22:13:46 · 2335 阅读 · 0 评论 -
目标检测数据集制作-批量移除空的xml文件
# 批量移除空的xml标注import xml.etree.cElementTree as ETimport ospath_root = ['E:\\dataset\\PVEL-AD\\Detection\\test\\total_annotations\\']for anno_path in path_root: xml_list = os.listdir(anno_path) for axml in xml_list: path_xml = os.pa.原创 2021-06-01 17:37:31 · 539 阅读 · 2 评论 -
目标检测数据扩充:水平镜像图像和标注文件xml
只需更改文件路径即可使用。# -*- coding:utf-8 -*-import cv2import osimport sysimport reimport xml.etree.ElementTree as ETfrom PIL import Imageimgreadpath = 'E:\\Users\\efficientdet-tf2-master\\VOCdevkit\\VOC2007\\JPEGImages\\' # 原始jpg存放的文件夹imgwritepath原创 2021-05-31 09:42:23 · 476 阅读 · 0 评论 -
目标检测AP,mAP计算以及P/R曲线绘制-第一篇:评价指标
原创 2021-05-27 10:50:29 · 1031 阅读 · 0 评论 -
目标检测AP,mAP计算以及P/R曲线绘制-第一篇:Ground truth规范为txt格式
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习..原创 2021-05-18 20:23:25 · 727 阅读 · 0 评论 -
IEEE TIE2021(顶刊) | 用于异常检测的双向注意力特征金字塔网络 Cosine Non-local
IEEE TIE2021 | 用于缺陷检测的双向注意力特征金字塔网络BAF-Detector: An Efficient CNN-Based Detector for Photovoltaic Cell Defect DetectionBinyi Su, Haiyong Chen, and Zhong Zhou【导读】为了解决随着深度学习网络的加深,网络出现的feature vanishment问题,本文提出了一种名为的双向注意力特征融合检测器BAF-Detector,旨在提升多尺度光伏电池原创 2021-05-08 15:23:16 · 1800 阅读 · 0 评论 -
python对图像批量重命名img00001.jpg
import globfrom PIL import Imageimport ospath = "E:\\dataset\\PVEL-AD\\*.*"savepath = "E:\\dataset\\PVEL-AD_open\\"i = 1for jpgfile in glob.glob(path): img = Image.open(jpgfile) img_name = os.path.basename(jpgfile) img_id = img_name.sp...原创 2021-05-03 11:34:35 · 697 阅读 · 0 评论 -
史上最全的工业缺陷数据集汇总
迅雷下载链接:https://pan.xunlei.com/s/VMYnow8tm9e3S3abL_bf539HA1提取码链接:https://download.csdn.net/download/qq_38784454/16794758本数据集包含16类各行各业的工业缺陷图像:光伏电池缺陷,布匹,胶囊,瓷砖,螺丝钉,坚果,牙刷,药片,电路元器件等。堪称目前最好的工业缺陷数据集。...原创 2021-04-21 18:32:41 · 3692 阅读 · 7 评论 -
python通过鼠标点击进行图像截图,类似QQ截图
截图前:截图后:import globimport cv2,os#截图def cut(img_path,img_id): global img, img_name img_name = img_id img = cv2.imread(img_path) img = cv2.resize(img, (3000, 1500)) cv2.namedWindow('image',0) # cv2.resizeWindow('image.原创 2021-04-18 11:22:20 · 1425 阅读 · 1 评论 -
python实现灰度图像转化为RGB图像
方法一:使用python中的cv2库。import numpy as npimport cv2import globimport ospath = "E:\\Users\\CycleGAN-tf2.0-tourtial\\dataset\\PL\\crack\\testA\\*.jpg"img_path = "E:\\Users\\CycleGAN-tf2.0-tourtial\\dataset\\PL\\"for jpg_path in glob.glob(path): img_原创 2021-04-09 19:36:29 · 11123 阅读 · 0 评论 -
json批量转换成label图像
直接上代码,本人将其进行了改进,修改路径,运行程序。import argparseimport jsonimport osimport os.path as ospimport warningsimport PIL.Imageimport yamlfrom labelme import utilsimport base64def main(): warnings.warn("This script is aimed to demonstrate how to conv原创 2021-03-14 17:07:02 · 424 阅读 · 0 评论 -
tf2.0 GPU被无限制占用
tensorflow-gpu在训练程序的时候会自动将GPU占满,解决方法有两种:方法一:在程序开头加入# GPU内存占用设置:方法1physical_gpus = tf.config.list_physical_devices("GPU")tf.config.experimental.set_virtual_device_configuration(physical_gpus[0],[tf.config.experimental.VirtualDeviceConfiguration(.原创 2021-02-27 22:42:38 · 691 阅读 · 0 评论 -
图像亮度、对比度计算
from PIL import Image, ImageStatimport numpy as npimport matplotlib.pyplot as pltfrom cv2 import cv2import numpy as npdef contrast(img0): img1 = cv2.cvtColor(img0, cv2.COLOR_BGR2GRAY) # 彩色转为灰度图片 m, n = img1.shape # 图片矩阵向外扩展一个像素 img.原创 2021-02-20 20:41:34 · 1110 阅读 · 1 评论 -
图像直方图绘制
from PIL import Image, ImageStatimport numpy as npimport matplotlib.pyplot as pltfrom cv2 import cv2import numpy as np# 直方图img_0 = cv2.imread('C:\\Users\\Desktop\\1.jpg', 0)#直接读为灰度图像#opencv读取方法cv2.calcHist(速度最快)#图像,通道[0]-灰度图,掩膜-无,灰度级,像素范围hist_c.原创 2021-02-20 20:39:25 · 196 阅读 · 0 评论 -
图像阈值化分割
import cv2import numpyfrom matplotlib import pyplot as pltimg = cv2.imread('C:\\Users\\Desktop\\58_2_test.jpg', 0)# 对图像进行阈值分割# img = cv2.imread('4.jpg', 0)ret, thresh1 = cv2.threshold(img, 100, 255, cv2.THRESH_BINARY) # binary (黑白二值)ret, thresh.原创 2021-02-20 20:36:47 · 104 阅读 · 0 评论 -
目标检测——计算voc数据集中每一类的标注框的数量
import os# input_dir='D:\\Users\\FPN\\FPN_Tensorflow-master\\tools\\test\\Annotations'input_dir='D:\\Users\\FPN\\FPN_Tensorflow-master\\VOCdevkit\\train\\Annotations'import xml.etree.ElementTree as ETimport xml.dom.minidomn = 0a = 0b = 0c = 0d = .原创 2021-02-20 20:34:28 · 1059 阅读 · 0 评论 -
对抗loss理解
第一个式子为判别器的损失函数,logD(x)为判别器将真实数据判定为真实数据的概率,log(1-D(G(z)))为判别器将生成器生成的虚假数据判定为真实数据的对立面即将虚假数据仍判定为虚假数据的概率。判别器就相当于警察,在鉴别真伪时,必须要保证鉴别的结果真的就是真的,假的就是假的,所以判别器的总损失即为二者之和,应当最大化该损失。由于判别器(警察)鉴别真伪的能力随着训练次数的增加越来越高,生成器就要与之“对抗”,生成器就要相应地提高“造假”技术,来迷惑判别器。第二个式子为第一个式子的第二项,含义相同...原创 2021-01-11 11:53:10 · 6552 阅读 · 0 评论 -
tf2.0 cycle-gan,官方代码复现整理。
官方数据集网址:https://people.eecs.berkeley.edu/~taesung_park/CycleGAN/datasets/官方教程:https://tensorflow.google.cn/tutorialscycle-gan代码(已修改,可用):import tensorflow as tfimport tensorflow_datasets as tfdsfrom pix2pix import pix2piximport osimport time, ar原创 2021-01-03 09:49:59 · 1007 阅读 · 4 评论 -
tensorflow2.0实现自己的数据集的分类任务-DenseNet121
1、数据集要求:图片名称要用自己的标签作为开头如:crack.0.jpg和uncrack.1.jpg。2、在代码dicClass和classnum修改为自己的标签和类别3、运行下面程序进行训练。import numpy as npfrom tensorflow.keras.optimizers import Adamimport cv2from tensorflow.keras.preprocessing.image import img_to_arrayfrom sklearn.mo原创 2020-12-27 12:14:57 · 1590 阅读 · 0 评论 -
使用python中的matplotlib同样可以画出非常清晰的图
在一般的情况下直接使用在使用matplotlib画图的时候,如果直接将保存的png或者jpg格式的图插入到word中图片中的文字往往不清晰。解决步骤:第一步:将图像保存为svg格式的图像。第二步:使用软件INKSCAPE打开图像,并另存为emf格式的图像。软件下载链接:https://download.csdn.net/download/sinat_41709116/10239...原创 2019-09-18 21:25:50 · 8535 阅读 · 0 评论 -
window10 Keras写的YOLOv3 测试程序yolo_video.py改进测试图像
如果测试图像而非视频的话,网上有很多代码都是在terminal里面运行:python yolo_video.py --image, 本人比较懒不喜欢使用命令运行程序,因此对测试程序yolo.video.py做了如下更改。 实验结果发现Keras写的yolo虽然可以出实验结果但是loss接近10左右。实验结果如图:将yolo_video.py更改为下面的代码直接...原创 2019-06-28 09:26:23 · 5751 阅读 · 3 评论 -
读取xls文件时,一定要把xls对应的Excel文件关掉
读取xls文件时,一定要把xls对应的Excel文件关掉。原创 2019-02-22 22:16:58 · 479 阅读 · 0 评论 -
mask-rcnn 批量从json文件中挑选出img.png,label.png (matlab)
clcclear close allfilepath = 'E:\EL_dataset\train_data\labelme_json\';%json文件filenames = dir(filepath);for i = 3:length(filenames)I = imread([filepath,filenames(i).name,'\','label.png']);%label....原创 2018-12-18 14:24:06 · 1103 阅读 · 0 评论 -
批量jpg转bmp
clcclear close all[filename,filepath] = uigetfile('*.*','选择文件夹','C:\Users\binyi su\Desktop\label\json\');%jpg转bmpfilenames = dir(filepath);for i = 3:length(filenames)I = imread([filepath,filenam...原创 2018-12-18 11:13:45 · 996 阅读 · 0 评论 -
批量转换json_to_dataset
两种方法: 法一、下载test.bat,将这个文件放到与json文件同目录下,直接运行这个文件。 法二、下载test.bat,将这个文件放到与json文件同目录下,进入自己的python环境,cd到test.bat的目录,再回车。如:(同一磁盘)cd E:\EL_dataset\train_data3\json\test.bat;(不同...原创 2018-12-20 21:31:09 · 994 阅读 · 1 评论