图像处理
不解不惑
这个作者很懒,什么都没留下…
展开
-
opencv 4.6.0 SIFT特征点检测
不同OpenCV 版本的SIFT特征检测代码,不太一样,这里记录下我使用OpenCV 4.6.0.66版本的OpenCV进行SIFT特征点检测的代码。原创 2023-01-10 17:35:06 · 778 阅读 · 0 评论 -
MEGC(FACIAL MICRO-EXPRESSION GRAND CHALLENGE)微表情识别比赛相关网站
微表情识别比赛MEGC相关网站。原创 2022-12-05 09:56:01 · 870 阅读 · 0 评论 -
opencv python 多张jpg图片转成avi视频
在进行微表情识别研究时,使用到了山东大学发布的MMEW微表情数据集,这个数据集提供的数据是图片的形式。数据集在采集的时候使用的帧率是90帧,而使用图片进行连续查看的时候,帧率大概能达到10几帧,看到的面部表情的运动特别慢,不容易进行微表情的面部动作分析。把图片合成视频后,可以通过视频软件的倍速播放功能的0.5倍速可以得到比较好的查看效果。原创 2022-10-25 14:57:55 · 1314 阅读 · 0 评论 -
RGBD相机总结
对深度相机进行总结,方便不断补充。原创 2022-08-10 00:07:33 · 1042 阅读 · 0 评论 -
pytorch torchvision 实现的keypoint rcnn使用python进行预测并显示预测结果
深度学习中,完成模型训练后,需要编写测试文件,读取输入数据和模型进行推理,对推理结果进行输出和显示,这里整理了一个keypoint rcnn的推理和结果显示代码。原创 2022-07-15 10:31:08 · 2075 阅读 · 1 评论 -
mediapipe 安装笔记-1:使用anaconda python 3.7.13
anaconda 2021.11 python 3.7.13 环境 安装mediapipe(0.8.10),导入mediapipe提示protobuf版本错误,安装正确版本的prtobuf问题得到解决。原创 2022-06-22 09:05:53 · 2319 阅读 · 1 评论 -
unet 学习笔记-5 使用unet分割耳朵区域
使用unet进行人体耳朵区域的分割。原创 2022-06-14 11:34:14 · 483 阅读 · 1 评论 -
unet学习笔记-4 优化json生成mask部分的代码
本篇博客为unet网络的学习笔记,本部分优化了通过labelme标定的json文件生成mask部分的代码,使用cv2.fillConvexPoly在生成非凸图形时会有一些问题,使用cv2.fillPoly函数能得到更好的结果,这两个函数的输入的第2个参数部分也有一定差别。...原创 2022-06-12 23:24:56 · 787 阅读 · 0 评论 -
cv2.fillConvexPoly( ) 凸多边形
opencv进行凸多边形绘制,不是严格的凸多边形也可以进行绘制。但是如果包含下图中78点处类似的锐角就不能整成绘制了。原创 2022-05-31 18:48:13 · 236 阅读 · 0 评论 -
opencv-python读取图片和lableme标注的json文件并显示mask
只是需要使用lableme标准的json文件获取mask,经过分析使用其他库的必要性比较低,于是自己写了一个通过labelme标准的json文件获取mask的程序。这里我使用的json文件只是标注了个polygon。import cv2import numpy as npimport jsonjson_path = r'D:\datasets\24\2022-01-05\10_color_1.json'img_path = r'D:\datasets\24\2022-01-05\10_col原创 2022-04-20 10:16:20 · 1693 阅读 · 0 评论 -
opencv python 深度图渲染
深度图如果安按照灰色图显示时很白的,和一些鲜艳的颜色不是很搭配,可以显示为彩色的,就想MATLAB显示热图的时候可以设定colorbar一样。# depth 为单通道 16bit位深的深度图像# xmin和xmax可以通过图像的计算深度图中的最大值和最小值,也可以手动设定# xmin = np.min(self.depth)# xmax = np.max(self.depth)xmin = 0xmax = 2500depth_image = np.array((self.depth - x原创 2022-03-28 16:29:44 · 5591 阅读 · 1 评论 -
相机的凸透镜工作区域和相机内参
(1)成像原理:普通摄像头中的凸透镜是单个的定焦凸透镜,物距(u>2f)和像距(f<v<2f)。成倒立放大的像。(2)相机成像焦距量纲:相机的焦距的量纲是像素,对应特定的成像分辨率。fx和fy越大,可视角度(FOV)越小。视场角度包括水平视场角HFOV和垂直视场角VFOV。示例:517.679 0 320 0 517.679 240.5 0 0 1 HFOV = arctan(320/517.679) * 2 = 31.72 * 2 = 63.44°原创 2022-03-07 15:00:10 · 547 阅读 · 0 评论 -
BIWI Matlab demo使用笔记
1.biwi数据集现在地址:https://www.kaggle.com/kmader/biwi-kinect-head-pose-database22.biwi MATLAB代码地址Matlab+BIWI Kinect Head Pose Data base (Partial) - File Exchange - MATLAB Central3.使用笔记(1)通过C++编译生成读取depth需要代码:在使用main.cpp之前需要运行下compile_mex.m使用代码包里的mxR原创 2022-03-06 16:06:38 · 754 阅读 · 0 评论 -
open3d显示biwi head pose estimation 3d数据
代码:# BIWI头部姿态估计数据集使用说明与点云图像融合 https://blog.csdn.net/weixin_43038346/article/details/120097266import cv2import numpy as npimport structfrom math import ceil, floorimport open3d as o3ddata_dir = r'E:\Downloads\datasets\BIWI\kinect_head_pose_db\h..原创 2022-02-26 16:16:27 · 260 阅读 · 0 评论 -
matlab 读取biwi dataset深度图并显示
代码如下:filepath = 'E:\Downloads\datasets\BIWI\kinect_head_pose_db\hpdb\01\frame_00003_depth.bin';f = fopen(filepath, 'r');% width = bin2dec((vec2mat(dec2bin(fliplr(fread(f,4)')),1)'));% height = bin2dec((vec2mat(dec2bin(fliplr(fread(f,4)')),1)'));%原创 2022-02-25 13:15:29 · 2724 阅读 · 0 评论 -
mediapipe和dlib特征点的对应关系
特征点检测开始用的dlib,由于mediapipe特征点检测更稳定,转为使用mediapipe,下面列举部分mediapipe和dlib特征点的对应关系。mediapipe和dlib部分特征点对应 特征点名称 mediapipe dlib 左眉左角 63 18 左眉右角 107 21 右眉左角 336 22 右眉右角 293 25 左眼左角 33 36 左眼右角 133 39 右眼...原创 2022-02-08 16:03:07 · 1586 阅读 · 4 评论 -
oepn3d python 读取python文件获取指定视角并自动旋转
本代码修改自open3d官方GitHub的示例代码:# examples/python/visualization/non_blocking_visualization.py# examples/python/visualization/non_blocking_visualization.pyimport open3d as o3dimport numpy as npimport copyif __name__ == "__main__": # o3d.utility.s原创 2021-12-14 16:03:49 · 3748 阅读 · 0 评论 -
Ubuntu 20.04 install cuda 10.1 & ElasticFusion
目录1.Ubuntu 20.04.2 install cuda 10.012.安装Pangolin3.安装OpenNI24.安装ElasticFusion参考文献:1.Ubuntu 20.04.2 install cuda 10.01使用命令查看:apt search nvidia-cuda-toolkit使用命令安装sudo apt install nvidia-cuda-toolkit2.安装PangolinPangolin安装的时候如果没有bui原创 2021-08-14 15:03:27 · 529 阅读 · 5 评论 -
opencv 4.5.2 使用比色卡进行颜色校正
受相机特点、光照强度和环境光色等的影响,相机拍摄的照片可能并不能很好的还原被拍摄的物体,通过比色卡进行颜色校正能很好的缓解。opencv contrib库里面有颜色校正模块,可以用来进行颜色校正。颜色校正前:颜色校正后:代码:#include <opencv2/core.hpp>#include <opencv2/highgui.hpp>#include <opencv2/imgcodecs.hpp>#include <openc原创 2021-04-07 21:39:45 · 6995 阅读 · 10 评论 -
ubuntu 18.04 python3.7 fatal error: Python.h: No such file or directory
Ubuntu 18.04 python3.7 安装dlib出现这个错误,是由于python 3.7 没有python.h解决办法:sudo apt-get install python3.7-dev备注:使用sudo apt-get install python3-dev是解决不了问题的,因为Ubuntu18.04默认带的python是2.7版本和3.6版本,python3默认指向python3.6使用安装python3-dev会安装到python3.6那里去。参考文献:.原创 2021-03-25 21:27:57 · 1309 阅读 · 0 评论 -
Windows 10 VS 2013 Bundle fusion 代码运行笔记
最近在搞人体面部重建,本来打算通过一个正视图或者两个侧视图进行三维重建,实践中发现无论相机以哪个角度拍摄人脸,较少张的图像数据都不能包含所有部位的人脸数据。经过分析,想实现完整的人体面部重建,只能通过连续的图像序列实现人脸三维重建。经过网上检索bundle fusion在RGBD相机三维重建中,效果算是比较好的,所以下载下来运行下试试,由于使用的是国产的奥比中光的RGBD深度相机,所以这里先采用公开数据集进行实验。安装的速度还是蛮快的,就是开始有点纠结要不要安装VS2013,想先看下算法效果就果断安装了原创 2020-10-16 15:54:21 · 1368 阅读 · 4 评论 -
Matlab 查看3D图视角选择小技巧
截取写博客用图片的过程中发现使用QQ的截图快捷键部分内容会消失,可以 使用Windows 的截图功能。windows 10 自带的屏幕截图功能快捷键是【windows徽标键】+【shift】+【s】进入正题:1.Rotate Around Axes Center 打算以哪个点为中心进行旋转,就点击显示的图像中的某个点,然后前后左右滑动鼠标即可实现以某个点为中心旋转查看图形。2.View View提供了一些固定的视角,也可以使用view函数设置特定角度,现在显示函数后面,例如:...原创 2020-10-04 21:29:13 · 6803 阅读 · 0 评论 -
奥比中光深度相机使用笔记一
一、基本信息公司官网:http://www.orbbec.com.cn/淘宝网店:https://shop142544700.taobao.com/开发社区:https://developer.orbbec.com.cn/develop.html使用的型号为:Astra S ,这款比较相对适合近距离应用二、小知识总结(1)深度相机(RGBD)包含两部分数据,RGB和Depth深度数据,RGB的存储方式很多,大家也很熟悉,深度数据一般为16bit,进行存储的使用可以使用OpenCV的c原创 2020-10-04 15:37:59 · 3276 阅读 · 0 评论 -
PIL和OpenCV 打开单通道图像、进行显示和数据查看
1.用opencv读取单通道png文件的时候发现,读取后的图像变量是3通道,网上查了下imread函数的参数。PIL读取单通道的图像结果还是单通道,不存在opencv的问题。2.显示,在进行matplotlib进行单通道图像显示的时候发现显示结果不是很正常,于是查了下,下面代码可以正常显示。import cv2import matplotlib.pyplot as pltimg = cv2.imread('/home/kitty/workspace/lesson-2/data/train原创 2020-08-08 20:49:44 · 6493 阅读 · 0 评论 -
Ubuntu 18.04 通过软件商店安装类似Photoshop的GIMP 2.10.20
1.打开软件商店后,界面如下2.点击右上角的搜索按钮3.搜索结果中,第1个和第4个很像,点进去以后:第一个如下(安装这个):第4个如下:4.软件界面如下,和Photoshop有些相似原创 2020-07-10 06:51:09 · 595 阅读 · 0 评论 -
数字图像处理 冈萨雷斯 第三版 书中配套图片下载地址
网站首页:http://www.imageprocessingplace.com/1.书中图片http://www.imageprocessingplace.com/DIP-3E/dip3e_book_images_downloads.htm#top2.standard test imagehttp://www.imageprocessingplace.com/root_files_V3/image_databases.htmhttp://www.imageprocessingp原创 2020-06-09 18:35:32 · 3079 阅读 · 3 评论 -
labelme 不能Edit Label和Delete Polygons
(1)项目需要对数据标注,选择了labelme标注工具。(2)在Windows上使用labelme的时候发现不能正常的Edit Label和Delete Polygons,在Ubuntu上面也是如此,在网上搜索了下无果。(3)关闭了软件重启了下,可以对上次标注的信息进行Edit Label和Delete Polygons,可能这两个功能适用于以前标注的信息吧。由于要标注了线,不是矩形或者多边形,发现labelme里面有Line 和LineStrip,实验发现Line只是有两个端点的线段,而.原创 2020-05-28 06:29:44 · 2458 阅读 · 2 评论 -
Ubuntu 18.04 install mmdetection 和pytorch 1.5笔记
1.首先安装Anaconda, 去镜像站下载最新版安装即可.2.配置conda源,如果出现连接超时,可以把~/.condarc 文件中的defaults行删除conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/con原创 2020-05-21 18:04:39 · 480 阅读 · 0 评论 -
MATLAB 图像RGB转Lab并进行Min-Max归一化存成图片,原始的Lab数据存入Excel
MATLAB 图像RGB转Lab并进行Min-Max归一化存成图片,原始的Lab数据存入Excel把数据保存到Excel文件中,更方便对比查看。clc;clear;close all;PATH = 'C:\Users\UserName\Desktop\Img_20200509\';fileFolder=fullfile(PATH);dirOutput=dir(fullfile(fileFolder,'*.jpg'));[size_1, size_2] = size(dirOutpu原创 2020-05-10 12:29:24 · 972 阅读 · 0 评论 -
Pytorch 学习笔记:迁移学习使用VGG16进行kaggle 猫狗分类
kaggle上猫狗分类网址:https://www.kaggle.com/c/dogs-vs-cats1.数据部分分类工作的第一步是准确数据,从kaggle上面下载的dogs-vs-cats数据包含3个文件train.zip,test.zip和sample_submission.csvtrain.zip里面共25000张图片,猫狗各12500张,名称格式为:XXX.YYYYY.jpg...原创 2020-05-05 03:13:45 · 2210 阅读 · 2 评论 -
pytorch 读取训练好的Lenet5模型并进行测试,显示错误结果
使用的数据集:MNIST使用的网络结构:Lenetmport torch.nn as nnimport torch.nn.functional as Fimport torchimport torchvisionimport numpy as npimport matplotlib.pyplot as pltimport cv2device = torch.devic...原创 2020-03-30 21:21:01 · 802 阅读 · 1 评论 -
pytorch 用Lenet5实现MNIST手写数字识别,迭代100次,正确率99.32%
1.训练模型import torchimport torchvisionfrom torchvision import datasets,transformsimport matplotlib.pyplot as pltimport numpy as npimport cv2device = torch.device("cuda:0" if torch.cuda.is_avai...原创 2020-03-30 20:33:51 · 3634 阅读 · 3 评论 -
pytorch 数据放到GPU上面
tensor数据的cuda方法返回变量值的device为cuda,并不会直接移动当前变量到GPU,举例:B = A.cuda()其中A为CPU变量,那么执行上面语句后,A依旧在CPU上,创建的新的数据B是A在GPU上面的拷贝,当然单独执行A.cuda(),A也依旧在CPU上面。import torchA = torch.empty(4,1,2,2)print(A.devi...原创 2020-03-30 17:33:51 · 12286 阅读 · 0 评论 -
python opencv 灰度转RGB 是把数据复制到3个通道,3个通道数值相同
python opencv 灰度转RGB实现方法验证:(1)第一个通道的值和原始灰度图的值完全相同(2)RGB 3个通道数值都相同import cv2img2 = cv2.cvtColor(img, cv2.COLOR_GRAY2RGB)print(img2.shape)plt.imshow(img2)plt.show()print(np.sum(img2[:,:,0]...原创 2020-03-30 11:19:46 · 4333 阅读 · 0 评论 -
Pytorch 学习笔记:单通道图像的transforms归一化方法
transforms.Normalize 里面的数据维数要和图像数据的通道数保持一致,当数据维数为1时,数据后面要有逗号。from torchvision import transformstransform = transforms.Compose([ transforms.ToTensor(), # 转为Tensor transforms.Normal...原创 2020-03-30 10:25:16 · 3777 阅读 · 2 评论 -
python opencv灰度图转RGB
灰度图转RGBIMG_OUT = cv2.cvtColor(IMG_IN, cv2.COLOR_GRAY2RGB)原创 2020-03-29 20:16:35 · 17708 阅读 · 0 评论 -
python 显示图片的方法
1.import matplotlib.pyplot as pltplt.imshow(mat)plt.show()2.import cv2cv2.imshow('窗口名', mat)cv2.waitKey(0)cv2.destroyAllWindows()原创 2020-03-29 20:11:17 · 950 阅读 · 0 评论 -
pytorch torchvision.datasets.CIFAR10 读入的数据集的数据类型
train_dataset = torchvision.datasets.CIFAR10(root='data/',train=True,transform=transforms,download=True)data,label = train_dataset[0]print(data)print(data.dtype)print(train_dataset.data[0])pri...原创 2020-03-29 08:20:51 · 7105 阅读 · 1 评论 -
pytorch torchvision.transforms 对图像数据进行归一化
1.对numpy数据进行归一化import torchimport torchvisionimport torchvision.transforms as transformsimport numpy as npX = np.random.choice(255, (5,4,3))print(X)transform = transforms.Compose([ tran...原创 2020-03-23 09:09:32 · 4023 阅读 · 0 评论 -
Pytroch 读取图片并进行转化为向量和归一化处理
import torchfrom PIL import Imageimport torchvision.transforms as transformsimport matplotlib.pyplot as pltimport numpyplt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签img = Image.open(...原创 2020-03-23 08:11:51 · 1285 阅读 · 0 评论