学术菜鸟小晨
5年IT从业经验,人工智能高级算法工程师、人工智能领域新星创作者、博客专家
展开
-
python去除重复图片(数据清洗)
数据清洗是指对数据进行审查、修改和删除,以确保数据的准确性、完整性和一致性。数据清洗通过重复数据处理:识别并处理数据中的重复记录,避免因数据重复导致分析结果产生偏差。数据清洗的意义在于确保数据质量,提高数据分析和挖掘的准确性和可靠性。通过数据清洗,可以减少数据分析过程中的错误和偏差,确保分析结果更加可信。同时,高质量的数据也为后续建模、预测和决策提供了坚实的基础。原创 2023-08-02 14:03:17 · 1469 阅读 · 0 评论 -
Python在多级文件夹中删除非图片文件(数据清洗)
【代码】Python在多级文件夹中删除非图片文件(数据清洗)原创 2023-05-18 16:19:17 · 168 阅读 · 0 评论 -
对爬图产生的损坏图片进行批量删除
通过爬图产生批量错误图片(损坏图片),用以下代码进行过滤删除。原创 2023-04-19 10:47:36 · 245 阅读 · 0 评论 -
python实现.jpeg转.jpg
jpeg 转 jpg原创 2022-12-06 14:01:33 · 1599 阅读 · 0 评论 -
python批量读取视频并按指定数量抽帧
将多个视频放入视频文件夹video中,file1就是截图文件所在。原创 2022-06-16 08:48:01 · 591 阅读 · 0 评论 -
根据url批量下载图片
根据url.txt,下载图片至当前目录images下:import requestsimport cv2with open("url.txt","r") as f: urls = [cname.strip() for cname in f.readlines()]for url in urls: print(url) pic = requests.get(url) print(url.split("/")[-1]) name="./image...原创 2022-03-18 17:11:08 · 2991 阅读 · 0 评论 -
ubuntu16.04 cuda10 安装tensorRT 7.0
首先,你需要登录英伟达官方网站,下载适用于Ubuntu系统的TensorRT 7.0安装包。通常,你可以在英伟达的开发者网站或者NGC(NVIDIA GPU Cloud)上找到相关的安装包。在安装TensorRT之前,确保你的系统已经安装了必要的依赖项,特别是CUDA和cuDNN。可以通过英伟达官方文档查看TensorRT 7.0所需的依赖项,并确保系统已经安装了这些依赖项。解压下载的安装包,然后按照官方提供的安装说明进行安装。一般来说,安装过程涉及运行安装脚本或者使用包管理工具进行安装。原创 2022-03-10 13:17:07 · 2356 阅读 · 0 评论 -
pyqt5的安装与使用(小例子——界面打开图片)
PyQt5是一个用于创建桌面应用程序的Python库,它通过封装Qt库(一个流行的C++跨平台应用程序开发框架)提供了丰富的GUI组件和工具。PyQt5允许开发者使用Python语言来创建功能强大、美观的图形用户界面(GUI),并支持跨平台运行,可以在Windows、MacOS和各种Linux发行版上运行。PyQt5还提供了Qt Designer工具,可以通过可视化界面设计来创建用户界面,然后将设计文件转换为Python代码进行进一步的定制。原创 2022-02-22 11:19:49 · 1320 阅读 · 0 评论 -
python GUI界面计算器实现
from tkinter import *root=Tk()root.title("计算器")Label(root,text="=").grid(row=0,column=3)v = StringVar()v1 = StringVar()e1=Entry(root,justify='center')e1.grid(row=0,column=0)e2=Entry(root,width=5,textvariable=v1,state="readonly...原创 2022-02-16 14:45:24 · 1623 阅读 · 0 评论 -
调用飞桨AI Studio 看年轻和衰老的样子
项目地址:飞桨AI Studio - 人工智能学习与实训社区领取AI Studio免费算力。运行AI Studio,选择最好的GPU:安装环境: cd /home/aistudio/PaddleGANpip install -r requirements.txt#本地安装PaddleGANpython setup.py develop#安装所需包 首次此安装包大约需要5分钟pip install dlib cd applications/python -u t.原创 2021-12-24 16:53:46 · 1282 阅读 · 0 评论 -
调用百度AI实现人像分割(下)
人像分割是一种计算机视觉技术,旨在将图像中的人物与背景进行有效地分离。这项技术在许多应用中都非常有用,比如人像摄影、视频编辑、虚拟背景等。通常,人像分割可以通过以下几种方式实现:传统方法:传统的人像分割方法通常基于图像的颜色、纹理、边缘等特征来区分人物和背景。这些方法包括阈值分割、边缘检测、区域生长等,虽然在某些场景下仍然有用,但在复杂场景下表现可能不佳。深度学习方法:近年来,随着深度学习技术的发展,基于神经网络的人像分割方法取得了巨大进展。特别是语义分割和实例分割技术,如FCN(全卷积网络)、Ma原创 2021-12-20 17:37:22 · 23812 阅读 · 25 评论 -
yolov4 flask部署web服务(视频检测)
前前篇链接:yolov3 flask部署 返回json(小白教程)_学术菜鸟小晨的博客-CSDN博客前篇链接: yolov4 yolov4-tiny flask部署web服务_学术菜鸟小晨的博客-CSDN博客有小伙伴想要一期部署检测视频的web服务,这之前一样把图片改成视频帧就可以啦.下面就是完整代码!!!webs1.py:# -*- coding: utf-8 -*-##导入flask类库,render_template模板,from flask import Flask,.原创 2021-09-16 13:45:13 · 2417 阅读 · 6 评论 -
voc数据集提取某类或某几类的图片和xml
网上大多数都是下面方法:https://blog.csdn.net/weixin_39881922/article/details/85070808但是遇到某些不规则图片名时会报错:使用如下代码便不会有任何问题:import xml.etree.ElementTree as ETimport osimport shutil def copy(xml_path,jpg_path,aim_path,aimxml_path): filelist = os.listdir(..原创 2021-07-19 10:34:59 · 886 阅读 · 2 评论 -
python批量提取图片名并从大文件中复制同名图片出来
import osimport shutilfile_path1='./JPEGImages/' ##需要图片名的文件file_path2='./out1/' ##需要图片的文件file_path3='./path/' ##保存图片的文件a=os.listdir(file_path1)print(a)for i in a: print(i) shutil.copy(file_path2+i,file_path3+i)...原创 2021-06-07 11:24:05 · 750 阅读 · 0 评论 -
删除xml中不想要的类
删除xml中不想要的类原创 2021-06-01 15:08:17 · 701 阅读 · 0 评论 -
扩增数据(自动标注)--------根据坐标位置txt生成xml文件
Python代码的图片自动标注是指使用Python编程语言来自动识别图片中的内容,并为其添加标签或注释的过程。这通常通过机器学习和深度学习模型来实现,其中最常见的模型是卷积神经网络(CNN)。这些模型能够识别和理解图片中的对象、场景和各种特征,然后基于这些理解自动为图片生成标签。原创 2021-04-21 17:12:30 · 27 阅读 · 0 评论 -
python – 防止Flask jsonify对数据进行排序
app = Flask(__name__)app.config['JSON_SORT_KEYS'] = False原创 2021-04-15 15:54:17 · 1352 阅读 · 2 评论 -
根据.txt图片列表提取想要的图片
# -*- coding: utf-8 -*-import shutilimport os def objFileName(): local_file_name_list = "2008_test.txt" obj_name_list = [] for i in open(local_file_name_list, 'r'): obj_name_list.append(i.replace('\n', '')) return obj_name_li...原创 2021-03-10 10:08:48 · 803 阅读 · 0 评论 -
PPyolo的安装,图片及视频测试(对比yolov4)
1.安装cuda和cudnn。2.安装paddle gpu版本。python3 -m pip install paddlepaddle-gpu==1.8.4.post107 -i https://mirror.baidu.com/pypi/simple3.查看是否安装好。pythonimport paddle.fluidpaddle.fluid.install_check.run_check()安装成功!4.项目地址:https://github.com/Paddle原创 2021-02-04 14:06:55 · 1263 阅读 · 1 评论 -
paddlehub之ps扣图合成
import paddlehub as hubimport cv2from PIL import Imageimport numpy as npimport matplotlib.pyplot as plt import matplotlib.image as mpimg # 待抠图照片image = 'ce.jpg'# 背景background = 'ce10.jpg'# 合成照片名称save_image = 'save_image.jpg'human_seg =...原创 2021-01-18 09:51:41 · 336 阅读 · 0 评论 -
python-opencv实现检测物体轮廓矩形并扣出
通过蓝色的阈值,去除背景,找出轮廓,并将图片扣出。其余颜色阈值:import cv2import numpy as npimg = cv2.imread("ce.jpg")# 检测蓝色的阈值lower_blue=np.array([78,43,46])upper_blue=np.array([110,255,255])# change to hsv modelhsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)# get maskmas..原创 2021-01-14 11:41:03 · 3698 阅读 · 0 评论 -
python学习(三)字符串替换指定位置元素
s='123254321'#将第4个2替换成4i,j=3,'4'string=list(s) #字符串转列表string[i]=j #列表替换元素z=''.join(string) #列表转字符串print(z)原创 2021-01-13 16:14:19 · 10180 阅读 · 0 评论 -
python学习(二)将二个列表合并成有序字典
1.二个列表合并:(有序)list1=[1,2,3,4,5]list2=['a','b','c','d','e']a=zip(list1,list2)print(list(a))(无序)list1=[2,5,8,1,3]list2=[9,0,7,4,10]a=zip(list1,list2)print(list(a))2.进阶:排序合并list1=[2,5,8,1,3]list2=[9,0,7,4,10]a=sorted(zip(list1,list2)原创 2021-01-08 11:31:35 · 519 阅读 · 0 评论 -
PaddleHub一键OCR中文识别 身份证识别
环境安装:PaddleHub一键OCR中文识别:https://aistudio.baidu.com/aistudio/projectdetail/512888开源代码:https://github.com/PaddlePaddle/PaddleHubcd paddlehubpython 1.py新建test:测试图片 新建out:保存图片 新建test.txt 测试图片名列表1.py:import matplotlib.pyplot as pltimport matpl...原创 2021-01-07 16:49:18 · 2911 阅读 · 2 评论 -
PaddleOCR docker实现 文字检测 身份证识别
百度PaddleOcr已集成服务调用,端口8866。 docker pull 987846/paddleocr使用方式:docker run --name ppdocr -p 8866:8866 -d 987846/paddleocr:latestpython3 tools/infer/predict_system.py --image_dir="./doc/imgs/11.jpg" --det_model_dir="./inference/ch_det_mv3_db/" --rec_model.原创 2021-01-05 17:05:55 · 2473 阅读 · 6 评论 -
对数据集所有图片进行重命名 对应的xml也重命名
import numpy as npimport globimport osimport xml.etree.ElementTree as ETimport xml.dom.minidom'''第一步,将xml文件和图片重新命名'''# 获取文件夹中图片的数量def getDirImageNum(path): bmpDirImagesNum = 0 for bmpfile in os.listdir(path): if os.path.splitex.转载 2020-12-24 10:59:35 · 1538 阅读 · 8 评论 -
yolov4_deepsort 目标跟踪
git clone https://github.com/theAIGuysCode/yolov4-deepsort.gitgithub git clone 下载太慢解决办法:https://blog.csdn.net/qq_34717531/article/details/111194264创建方法:conda create -n deepsort使用方法:source activate deepsortcd yolov4-deepsortpip3 install -r requirem.原创 2020-12-15 15:17:31 · 2525 阅读 · 1 评论 -
anaconda实现linux python版本切换
一、版本切换安装anaconda会覆盖本机python版本,在bashrc上加上这句,即可切回本机的python3.5。sudo gedit ~/.bashrcalias python='/usr/bin/python3.5'source ~/.bashrc二、安装其他python版本conda create --name py38 python=3.8conda activate py38...原创 2020-11-24 10:09:19 · 737 阅读 · 0 评论 -
目标检测误检太多解决办法
误检太多解决办法:1.增加数据。2.如果没有数据,增加负样本。将没有目标物体的场景当做负样本,生成空标签(如下代码),加入训练即可。import osimport xml.dom.minidom img_path = './fu/'xml_path = './xml/'for img_file in os.listdir(img_path): img_name = os.path.splitext(img_file)[0] #create an empty d原创 2020-11-03 14:41:53 · 4313 阅读 · 3 评论 -
voc数据集提取单类
# -*- coding: utf-8 -*-# @Function:There are 20 classes in VOC data set. If you need to extract specific classes, you can use this program to extract them. import osimport shutilann_filepath='./Annotations/'img_filepath='./JPEGImages/'img_savepath=.原创 2020-11-02 17:12:59 · 1048 阅读 · 0 评论 -
python实现:根据标签列表批量提取图片
如何根据test.txt将测试图片提取出来?import osimport shutil#测试列表name_list=open('./2008_test.txt')#图片路径tu_dir='./VOC2008/JPEGImages'#保存路径save='./test'dir_name = []#获取文件名for i in name_list: dir_name.append(os.path.basename(i.replace('\n','')))#print(di原创 2020-10-24 09:22:31 · 1317 阅读 · 1 评论 -
批量修改标签名
批量修改标签名,本例批量修改为smoke。import osimport os.pathfrom xml.etree.ElementTree import parse, Element#批量修改xml中内容def test(): path = "./Annotations/"#xml文件所在的目录 files = os.listdir(path) # 得到文件夹下所有文件名称 s = [] for xmlFile in files: # 遍历文件夹 .原创 2020-10-22 17:25:43 · 548 阅读 · 0 评论 -
python学习 (一) (os module)
实例:从文件夹中批量挑选文件(挑选出后缀名为jpg的图片)import ostest_dir ='./JPEGImages'#获取测试文件夹内的文件列表listpics = os.listdir(test_dir)for im in pics: if im.endswith('jpg'): print(os.path.join(test_dir,im))os module:os.path.split() 分裂上层目录和下层目录|文件 ,生成一个包含两个元素原创 2020-10-21 09:32:47 · 314 阅读 · 1 评论 -
python 指定时间运行代码
如果想要在指定时间里运行某段代码,可以参考以下程序。import timefrom interval import Intervalwhile True: # 当前时间 now_localtime = time.strftime("%H:%M:%S", time.localtime()) # 当前时间(以时间区间的方式表示) now_time = Interval(now_localtime, now_localtime) print(now_time)原创 2020-10-19 11:21:15 · 17418 阅读 · 4 评论 -
python批量加前缀
import oswhile True: content=input('请输入目录:') # file04 if os.path.exists(content): '''表示路径存在''' os.chdir(content) # 切换到输入的目录 切换到了file04目录 all_file_lst=os.listdir(os.getcwd()) # 获取目录列表形式 将file03目录下的文件或者文件夹以列表形式打印 .原创 2020-10-16 17:14:43 · 2341 阅读 · 0 评论 -
darknet下yolov4训练自己的数据集及其调参规则快速教程
前置:下载最新版本darknet,编译opencv一、数据准备在darknet-master下建立自己的数据twodata,将自己的数据弄成这种形式:图片放JPRGImages,xml放Annotations,ImageSets是空文件夹。其中makeTxt.pyimport osimport random trainval_percent = 0.1train_percent = 0.9xmlfilepath = './VOC2008/Annotations'tx原创 2020-09-02 09:24:10 · 2663 阅读 · 0 评论 -
根据xml标签,删除没有标注的图片(小白教程)
标注图片时,会有不想标注的图片,如果不删掉,又怕干扰训练。在标注时可先跳过不标,用以下代码统一删除。使用方式:将代码放入下面位置,执行即可。import osimages_dir = './JPEGImages/'xml_dir = './Annotations/'#创建列表xmls = []#读取xml文件名(即:标注的图片名)for xml in os.listdir(xml_dir): #xmls.append(os.path.splitext(xml)[0]原创 2020-08-31 16:34:46 · 1977 阅读 · 0 评论 -
Python(opencv)常见错误
1.list index out of range原因:一个可能是下标超出范围,一个可能是list是空的,没有一个元素。持续更新。原创 2020-08-26 16:44:57 · 956 阅读 · 0 评论 -
Ubuntu16.04深度学习环境的配置和常用软件的安装
一、Driver version410.48+cudn10+cudnn7的安装:https://blog.csdn.net/lihe4151021/article/details/90237681二、将python默认版本改为3.5:sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100sudo update-alternatives --install /usr/bin/python pyth原创 2020-08-18 14:28:33 · 654 阅读 · 0 评论 -
有趣的Python OpenCV教程学习(下)
接着上一篇:https://blog.csdn.net/qq_34717531/article/details/1074025457.模板匹配import cv2import numpy as npimport cv2import numpy as npimg_rgb = cv2.imread('timg.jpeg')#读取原图img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)#转灰度图template = cv2.imrea原创 2020-07-20 13:46:19 · 237 阅读 · 0 评论