![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
图像
文章平均质量分 63
蓝羽飞鸟
GO
展开
-
自己写一个mask标注工具吧(SAM标注+微调功能)
SAM+微调mask原创 2024-08-27 10:18:57 · 155 阅读 · 0 评论 -
plt figure中加入键盘鼠标互动
plt figure event原创 2024-03-01 20:45:00 · 440 阅读 · 0 评论 -
cv2.addWeighted 操作 np.array 踩坑记录
cv.addWeighted操作np.array原创 2023-03-03 16:37:24 · 955 阅读 · 0 评论 -
betterFlow DVS运动补偿源码解析
betterFlow 链接betterflow算法里面包含了运动补偿部分,运动补偿效果如下图所示左上(a) 是补偿前的event count image,可以看到运动模糊左下© 是补偿后的,可见去除了运动模糊右边(b) (d) 是对应的光流表示对于event, 是按平均时间面表示的这点实现的时候可截取一个时间窗,窗口内在每个位置处叠加timestamp, 然后除每个位置event的个数while ((TD.ts(j) < t2) && (j<Tmax))原创 2021-08-03 23:40:03 · 260 阅读 · 0 评论 -
详解LK光流法(含金字塔多层光流),反向光流法(附代码)
LK光流法可用来跟踪特征点的位置。比如在img1中的特征点,由于相机或物体的运动,在img2中来到了不同的位置。后面会称img1为Template(T),img2为I。光流法有个假设:灰度不变假设:同一个空间点的像素灰度值,在各图像中是不变的,也就是说T中特征点处的灰度,到了I中仍然是一样的灰度。这就要求光照恒定,物体反射恒定,是个很强的假设。现在要估计的是运动偏移量[dx, dy],也就是光流。仅用一个点无法解,一般会取一个窗口内的像素,考虑它们具有相同的运动。用最小二乘法来解像素的运动如下:原创 2022-03-13 22:35:47 · 16256 阅读 · 13 评论 -
并行bit count算法
计算一个整型数字中有多少个bit被置1,一般会想到按位循环遍历的方法。这里有一个并行计算的方法如下:先上代码v = v - ((v >> 1) & 0x55555555); // reuse input as temporaryv = (v & 0x33333333) + ((v >> 2) & 0x33333333); // tempc = ((v + (v >> 4) & 0xF0原创 2022-05-13 09:20:30 · 400 阅读 · 0 评论 -
opencv FAST特征 & 原理
FAST (Features from Accelerated Segment Test) 算法用来实时提取角点特征,详细原理见paper:“Machine learning for high-speed corner detection” in 2006 (Later revised it in 2010).先说下FAST特征的原理吧。在图像中选择一点p,它的像素值为Ip然后把Ip和它周围16个点的像素值作比较,取阈值t,如果这16个点中连续n个点的像素值都 > Ip + t, 或者 &原创 2022-05-10 14:44:57 · 1173 阅读 · 0 评论 -
手写ORB图像特征(附代码)
ORB特征由key points和descriptor两部分组成,也就是找出代表性的点,而且给出一个向量来表示点周围像素的信息。它的keypoint称为"Oriented FAST",是一种改进的FAST角点(FAST不在这里介绍)它的descriptor称为BRIFF,是一种二进制的描述方式,在后面的代码里有体现。ORB特征提取有以下2步:FAST角点提取,相比于原版FAST,它加入了特征点的主方向,也就是方向信息,为BRIFF描述子提供了旋转不变性。BRIFF描述子,就是在前一步key po原创 2022-03-04 11:45:54 · 4325 阅读 · 1 评论 -
Eigen库使用简介
Eigen是开源的C++线性代数库,常用在计算机图形学中。有份英文的Eigen使用手册,简要整理一下#include <Eigen/Core>创建新矩阵的时候如下Matrix3f A;Matrix4d B;这里的命名有一个便利性,比如A的类型是Matrix3f,就表示A是3x3 float型矩阵,同理B是4x4 double型矩阵。但并不是所有组合都work的,比如Matrix5s就会报错(虽然想的是5x5 short);也不是必须是正方形的矩阵。那如果想用5x5 shor原创 2022-01-25 15:10:19 · 1869 阅读 · 0 评论 -
labelme指定输出文件夹 批量json转png --图像分割数据集准备
用labelme标注之后,导出的是json文件,我们可用labelme自带的json_to_datase.py来把json转为png图片假如我的json文件名为event_172.json转成的是一个文件夹文件夹有如下文件,其中label.png是我想要的mask图片现在想批量把json文件夹下所有的json文件都统一转为对应名称的png(比如172.json转为172.png),并保存到我指定的输出文件夹下步骤如下:找到 labelme自带的json_to_dataset.py可用co原创 2021-09-23 15:31:52 · 1190 阅读 · 2 评论 -
卡尔曼滤波详解(paper加源码)
卡尔曼滤波广泛应用于智能导航与跟踪算法中,本文根据参考paper详解卡尔曼滤波原理,并结合matlab源码更好地理解paper前期概念:信号可以如下表示:y是观测信号,a是增益,x是信息,n是noise目标是估计x,估计值和真实值之间的误差为如果用平方误差,则估计一段时间的误差则是求期望值用最大似然推导,即是最大化估计x时y的概率:假设加性噪声是高斯分布,则:K是归一化常数,则最大似然函数(期望值)为取log卡尔曼滤波推导:state空间:在过程中的状态:xk原创 2021-07-12 10:56:39 · 883 阅读 · 0 评论 -
双线性插值
参考资料图像在rescale时中间会出现空洞,没有值。可用双线性插值补上这个空洞的值。如下图,如果想在P点插值,只需要找到它的最近4个邻域的点。先横方向插值R1,R2到Q11,Q21和Q12, Q22中间再在R1和R2之间纵向插值得到P的值具体举个例子计算过程为,先横向插值再纵向插值...原创 2021-01-12 17:47:13 · 553 阅读 · 1 评论 -
matlab用confusionmat计算SE, SP, F1 score
matlab里有个confusionmat函数接口是这样的M = confusionmat(true_label,predict_label)M计算出来是下面这样比如第一个class airplane吧,923意思是true class是airplane, 而我们预测的label也是airplane的个数而第一行第二列的4就表示true class是airplane, 而我们预测的label是automobile的个数是4那么就相当于对角线上蓝色背景的都是预测对的如果是2分类的情况,tru原创 2020-07-21 16:29:14 · 6486 阅读 · 0 评论 -
Otsu算法实现(matlab)
function threshold = Otsu(normalizedHist)%normalizedHist为归一化直方图%threshold为自动分割的阈值wk = 0;uk = 0;L = length(normalizedHist);uT = sum((0:L-1).*normalizedHist');maximum = 0;for k=1:L wk = wk + normalizedHist(k); %到阈值k处的累加直方图分量 uk = uk + (k-1)原创 2020-05-28 18:40:42 · 1651 阅读 · 0 评论 -
matlab conv2的图像卷积与CNN中图像卷积的区别
matlab中有conv2函数可以计算图像卷积比如F矩阵size为m1×n1m1 \times n1m1×n1, G矩阵size为m2×n2m2 \times n2m2×n2那么卷积结果的size就是(m1+m2−1)×(n1+n2−1)(m1+m2-1) \times (n1+n2-1)(m1+m2−1)×(n1+n2−1)如何计算:比如F=[1234]\left[\begin{arr...原创 2019-10-18 23:31:57 · 612 阅读 · 0 评论 -
Side Window Filtering(CVPR 2019)阅读与实现
论文 https://arxiv.org/abs/1905.07177主要针对图像滤波中边缘模糊的问题提出改进论文中认为edge两边极值不同且edge处不可导g(x−ϵ,y)≠g(x+ϵ,y)g(x - \epsilon, y) \neq g(x + \epsilon, y)g(x−ϵ,y)̸=g(x+ϵ,y)g′(x−ϵ,y)≠g′(x+ϵ,y)g'(x - \eps...原创 2019-07-11 21:53:29 · 4148 阅读 · 1 评论 -
mac Xcode opencv 配置
刚开始按照brew install opencv然后在Xcode中Create New Group等方法做了以后https://www.cnblogs.com/hongyang/p/6644775.html在Xcode中 #include <opencv2/opencv.hpp> #include <opencv2/core/core.hpp> ...原创 2019-07-10 22:51:03 · 670 阅读 · 0 评论 -
Neural Style Transfer解读与实现
论文 [Gatys et al., 2015. A Neural Algorithm of Artistic Style]给出一张content image(比如照片),再给出一个style image,可以把照片画风转换成style image的风格主要原理是取一个在content image和style image间的balance用一张白噪声图像不断学习,生成兼顾content和sty...原创 2019-07-04 16:53:18 · 2453 阅读 · 0 评论