- 博客(252)
- 资源 (5)
- 收藏
- 关注
原创 AT-BSN
总之核心思路都是:对于噪声相关的图像,在训练的时候利用噪声不相关的邻域去除中心区域的噪声,避免网络学习拟合噪声。训练的时候去相关,推理的时候要多利用周围纹理所以仍然保留一定的相关性,否则图像会比较模糊了。hqssl, dbsn:分别利用旋转卷积和膨胀卷积实现BSN适用于0均值空间不相关的噪声。noise2void, noise2self:盲点网络适用于0均值空间不相关的噪声。neighbor2neighbor:适用于0均值,空间不相关的噪声。AT-BSN:利用旋转卷积来实现去除相关性的噪声。
2025-12-04 16:38:01
121
原创 优化对比度增强的实时图像和视频去雾Optimized contrast enhancement for real-time image and video dehazing
里面有相关算法的去雾效果比较主要=环节,大气光估计,透射率粗估计只估计一个数,引导滤波精估计,gamma增强,根据估计进行去雾6. 一个比较清晰的代码:https://github.com/Accustomer/TheThingsWithImage/tree/main/Code/6_OCEDehazing7. https://www.cnblogs.com/Imageshop/p/3925461.html 有一个大概介绍。
2025-10-21 14:12:48
1077
原创 多焦点图像的融合方法介绍Guided filter-based multi-focus image fusion through focus region detection
代码可以参考:https://github.com/Accustomer/TheThingsWithImage/tree/main。根据原图和滤波后图像的 absdiff, 反复优化 abs diff 得到fusion weight。主要原理是求融合的weight。
2025-10-20 14:36:59
237
原创 利用小波分解进行模糊检测pywt.dwt2
在图像处理和计算机视觉领域,边缘结构(edge structure)是描述图像中像素值变化模式的重要概念。论文中提到的四种边缘结构——Dirac-Structure、Astep-Structure、Gstep-Structure 和 Roof-Structure——是根据边缘在空间中的形态和灰度变化特性分类的。它们在小波变换下的响应不同,因此可用于图像清晰度或模糊检测。边缘类型描述模糊后的变化极窄的脉冲型边缘,灰度值突变非常剧烈(类似理想边缘)。常见于锐利边界。
2025-10-10 15:57:10
992
原创 dinov3使用介绍
这种设计使得 DINOv3 相比传统的 ViT 模型具有更好的特征表示能力和更稳定的训练过程。每个 token 都有384维的特征向量,其中 CLS token 的输出通常作为整个图像的全局特征表示(即 pooler_output)。使用说明:https://github.com/facebookresearch/dinov3。根据 DINOv3 配置文件中的。
2025-08-23 16:47:58
4636
14
原创 坐标系和相机标定介绍,张正友标定法原理,opencv标定
在计算机视觉和摄影测量中,世界坐标系、相机坐标系、图像坐标系和像素坐标系是描述三维空间到二维图像映射过程的四个关键坐标系。以下是它们的详细解释和相互关系:XcYcZc1=[R0t1]XwYwZw1作用:将世界坐标转换为相机视角下的坐标,是三维到二维投影的中间步骤。3. 图像坐标系(Image Coordinate System, ICS)定义:相机成像平面上的二维坐标系,单位为物理尺寸(如毫米)。表示:点坐标:(x,y)(x, y)(x,y)原点 OOO 为
2025-07-16 13:49:32
1483
原创 无监督光流,unflow, uflow,upflow
选择一个大小为 ( n \times n ) 的邻域(例如 ( 3 \times 3 ) 或 ( 5 \times 5 )),排除中心像素后共有 ( m = n^2 - 1 ) 个邻域像素。
2025-07-10 21:36:48
1154
原创 遗传算法sbx
的交叉算子,由 Deb 和 Agrawal 提出,目的是模拟。在实数编码中的效果。其核心特点是通过参数。(eta)控制子代与父代的相似程度。结果:子代位于父代之间(因为。若需同时考虑行和列,应使用。通过线性组合父代基因和。
2025-06-22 14:28:17
780
原创 强化学习 PPO
近端策略优化 (PPO) 的思想是,我们希望通过限制在每个训练周期对策略所做的更改来提高策略的训练稳定性:我们希望避免策略更新幅度过大。原因有二1)经验表明,训练期间较小的策略更新更可能收敛到最优解。2)策略更新中过大的步幅可能导致“跌落悬崖”(获得糟糕的策略),并花费很长时间甚至没有恢复的可能性。因此,使用 PPO,我们保守地更新策略。为此,我们需要通过计算当前策略与先前策略之间的比率来衡量当前策略相对于先前策略的变化程度。并且我们将此比率裁剪到一个范围[1−ϵ,1+ϵ],这意味着我们消除了当前策略偏
2025-06-13 17:10:48
1216
原创 强化学习 A2C算法
更准确地说,Reinforce 是 基于策略的方法 的一个子类,称为 策略梯度方法。在基于策略的方法中,我们的目标是直接优化策略,而无需使用价值函数。更准确地说,Reinforce 是 基于策略的方法 的一个子类,称为 策略梯度方法。然而,因为我们使用蒙特卡洛采样来估计回报(我们使用整个 episode 来计算回报),所以我们在策略梯度估计中存在显着的方差。然而,因为我们使用蒙特卡洛采样来估计回报(我们使用整个 episode 来计算回报),所以我们在策略梯度估计中存在显着的方差。
2025-06-13 10:17:23
1651
原创 强化学习:策略梯度概念
开始以为policy_loss 计算的是策略梯度,感觉很不合理,其实不是的,差了一个求导呢。两者的梯度 符号相反。因此最大化目标函数等于最小化policy_loss。总结,policy_loss 的梯度 和 目标函数的梯度符号相反。
2025-06-12 20:21:45
366
原创 强化学习:DQN学习总结
因此我们需要了解env的特点,甚至做一个任务的时候,我们要自己定义自己的env,状态是什么,动作有哪些,什么情况下有奖励等等。Qtable是离散的,因此每一行的最大值也就是每个状态的最优动作一般是可以确定的。Q-Learning 是一种用于训练 Q 函数的算法,Q 函数是一种动作价值函数,它确定在特定状态并采取特定动作的价值。就是缓冲我们玩的游戏,1.可以重复利用这些经验,避免忘记以前的经验, 2.随机取出一批,消除连续状态的相关性。可想而知的是,得到每个动作的价值之后,价值最大的动作就是我们需要的动作。
2025-06-12 17:59:29
1177
原创 yolo11学习笔记
矩形训练会把同一批次的图像调整为合适的矩形尺寸,在保证长宽比的同时减少填充区域,从而提升训练效率。主要归一化和 是否多尺度训练(对图像进行随机缩放,训练的时候应该可以增加鲁棒性,感觉挺有用的,这里对图像缩放不需要改变bbox,因为bbox是归一化的)数据增强的效果和原理可以在https://docs.ultralytics.com/zh/modes/train/#train-settings 查看。接着就输入了model,从下图可知train和val的时候输入的是一个字典,包含img,bbox之类的数据。
2025-06-12 10:36:22
926
原创 目标检测 TaskAlignedAssigner 原理
TaskAlignedAssigner 是目标检测中用于对齐分类和定位任务的样本分配器。其核心思想是通过综合分类得分和预测框与真实框的 IoU,动态选择最合适的锚点作为正样本。动态 Top-k 选择:对每个真实框,选择任务对齐指标最高的前。冲突处理:若一个锚点被多个真实框选中,保留指标最高的分配。提取分类得分:根据真实框的类别,提取对应类别的分类得分。计算 IoU:预测框与真实框之间的 IoU。中心约束:过滤掉锚点中心不在真实框内的候选。是超参数,用于平衡分类和定位的重要性。
2025-05-26 15:12:24
917
原创 MOE介绍
此外,Python 的循环在处理大规模数据时,由于解释器的开销,也会额外消耗一定的内存。在稀疏 MoE 中,输入数据不会同时传递给所有专家网络,而是根据门控网络的输出,只选择一部分(通常是 top-k 个)专家网络进行处理,从而减少计算开销。实际输入可能是 batch_size, seq_len, input_size的shape,需要对每个seq_len进行处理,所以需要对输入数据进行reshape,将seq_len维度展开,然后进行处理,最后再将输出reshape回来。
2025-05-16 16:29:34
965
原创 vit中的位置编码,RoPE旋转位置编码,torch.nn.functional.embedding
RoPE通过绝对位置编码的方式实现相对位置编码,综合了绝对位置编码和相对位置编码的优点。相对位置编码关注标记之间的距离,增强模型对标记关系的理解,但使模型架构复杂化。这是通过旋转机制实现的,其中序列中的每个位置都由嵌入空间中的旋转表示。主要就是对attention中的q, k向量注入了绝对位置信息,然后用更新的q,k向量做attention中的内积就会引入相对位置信息了。绝对位置编码就是对每个位置编码一个位置相关的向量 ,然后加到原来的特征上。图中每一行是一个位置的编码,编码的长度等于特征的长度512。
2025-04-09 14:07:50
1678
原创 视频插帧EMAVFI:extracting motion and appearance via inter-frame attention for video
在视频帧插值任务中,捕获输入帧之间的运动信息和外观特征非常重要。之前的方法有的是通过直接将多帧拼接后输入特征主干网络来提取这两种信息,有的是分别设计复杂的模块来处理,比如用ContextNet处理外观信息,用成本卷积处理运动信息。本文提出的是利用帧间注意力机制来统一提取具有区分度的运动和外观信息,因为帧间自注意力机制可以对帧间运动进行建模,同时还能传递外观信息。本文提出了 inter frame attention模块,计算patch内其实就是邻域的像素的attention。
2025-04-07 17:11:35
1315
原创 video interp_Sparse Global Matching for Video Frame Interpolation with Large Motion论文解释
local feature branch 和 sparse global matching branchlocal feature branch 主要包括 local feature extractor, flow estimation, refine net三个小模块:local feature extractor 是CNN and Transformer hybrid structure, 用于特征提取。
2025-02-12 14:03:33
818
原创 sql layer 在depth prediction中的解释
由于自己的数据和 vimeo90k的数据在场景,噪声,画质等是由差异的,所以预期会有一点作用,但是也会有不适应的地方。就是多引入一个block,block的输入会引入gt信息,然后得到的teacher flow结果对原先的flow进行监督引导。后续finetune后应该会更好的。deconv红色的注释有误,应该是out = 2 * in (图像的尺寸,不是channel)官方源码VimeoDataset 处理vimeo 数据,修改源码的路径为自己的数据路径即可。unet输出的是 fusion的图像的残差。
2025-02-10 09:16:00
443
原创 optuna和 lightgbm
optuna支持很多种搜索方式:(1)trial.suggest_categorical(‘optimizer’, [‘MomentumSGD’, ‘Adam’]):表示从SGD和adam里选一个使用;(2)trial.suggest_int(‘num_layers’, 1, 3):从1~3范围内的int里选;(3)trial.suggest_uniform(‘dropout_rate’, 0.0, 1.0):从0~1内的uniform分布里选;
2024-12-25 10:32:09
1351
原创 一维数据预测FilterNet: Harnessing Frequency Filters for Time Series Forecasting
一共以下几个步骤:norm: 求每个特征的均值和方差(seq_len个数的均值和方差),以及normfilter: x是输入,w 是可学习的滤波系数, 将两者转换到频域,相乘,再转回来。
2024-12-06 16:11:53
1562
2
原创 gamma: CE Brightness-Distorted Images by Improved Adaptive Gamma Correction(2017)(附python)
首先计算累积直方图c,gamma = 1-c然后 apply gamma:通过以上可知 gamma和累积直方图有关系。因此对直方图进行不同程度的平滑可以得到不同的累积直方图, 如下图b: alpha=0.5,1,1.5时的累积直方图的变化梳理一下主要步骤:对YUV的Y 或者 hsv的v 通道处理1)首先计算直方图p2) 然后根据公式2计算 pw, normalized后的 pw’=pw/pw.sum(), 这里有参数alpha可调3) 然后计算累积直方图c, 和 gamma=1-c。
2024-11-22 14:39:56
889
1
原创 gamma cor:An adaptive gamma correction for image enhancement(2016)
低对比度图像
2024-11-22 13:55:37
526
原创 cuda, cudnn, ternsorrt, cvcuda安装
https://cvcuda.github.io/CV-CUDA/installation.html 是安装和使用教程安装好之后要设置环境变量,参考https://blog.csdn.net/Deaohst/article/details/138472286https://github.com/CVCUDA/CV-CUDA/releases 是安装文件。
2024-11-08 14:19:37
564
原创 flow based generation model
张振虎的博客:https://www.zhangzhenhu.com/glm/source/%E6%9C%80%E5%A4%A7%E4%BC%BC%E7%84%B6%E4%BC%B0%E8%AE%A1/content.html。最后介绍了2个模块,这两个模块 求G的逆和 G的juacobi矩阵的行列式的值都比较容易计算。slogdet 计算行列式后,取绝对值再取log, 返回行列式的符号和 最终结果。因此关键就是求解 G的逆 和 G的jacobi矩阵的det。设计模块的时候也要考虑的逆 和行列式的计算。
2024-10-08 14:18:26
470
原创 hdr tone mapping介绍2
https://blog.csdn.net/qq26983255/article/details/108541074
2024-09-26 17:23:59
516
原创 膨胀腐蚀操作opencv dilate膨胀白膨胀,erode腐蚀是黑吃白。主要针对二值图
【代码】膨胀腐蚀操作opencv dilate膨胀白膨胀,erode腐蚀是黑吃白。主要针对二值图。
2024-09-10 11:35:34
397
原创 predictive-filter-flow
网络是输入 noise image (n,c,h,w), 输出 filter (n,17x17,h,w) 其中17是filter的领域大小,就是为每个pixel生成一个17x17的滤波器。然后对inputa, inputb都 缩放2,4,,8,16,32倍五个尺度,缩放可以用opencv resize,或者其他的都可以的,作者源码用 transforms.Resize。求梯度的kernel,包括水平和竖直: [1,-1], [1,0,-1], [1,0,0,-1], [1,0,0,0,-1]
2024-08-30 09:12:44
1024
原创 pytorch, torch_tesnsorrt安装各版本匹配
python -m pip install torch2.3.0 torchvision0.18.0 torch-tensorrt2.3.0 tensorrt10.0.1 --extra-index-url https://download.pytorch.org/whl/cu118
2024-08-22 10:13:22
571
原创 sdapRandom Sub-Samples Generation for Self-Supervised Real Image Denoising
ap-bsn 转换为公式3,然后pd是固定的。
2024-08-10 14:11:34
633
原创 MM-BSN
作者分析了一个图像,发现噪声相关性 在 距离大于5(面积大于25)仍然比较大的像素比例占了三分之一。作者相比 ap-bsn主要修改了网络,相比与ap-bsn的单个center mask conv。本文提出两种mask, 希望一种打破相关性,另一种保留纹理细节。两种结合,更好的降噪。之前论文说到 邻域为5以内的噪声相关性比较大,距离大于5的时候相关性较小。
2024-08-10 14:08:36
427
2
原创 APbsn
在另一个相对本文改进的方法Random Sub-Samples Generation for Self-Supervised Real Image Denoising我也进行了相关实验,这次直接使用官方代码只改了数据集,可以得到类似的结果,就是blind spot net得到的图像都很平滑。pda,pdb分别为2,2的时候, 得到的结果A,B会稍好一些,多一些细节,但是仍然缺失很多纹理,不是很满意。pda,pdb分别为5,2的时候, 得到的结果A,B都很平滑。就是 训练的时候 stride=5 去相关。
2024-08-09 10:14:38
1521
2
原创 Asymmetric Mask Scheme for Self-Supervised Real Image Denoising:down susampling mask
训练的时候 only_first=true, 因此只有一个mask其作用,其实就是随机mask 50%像素建立损失,进行训练。默认2个mask互补,降噪后的图像被mask的区域 互补 组成完整的denoised image, 参看6.3。但是推理的时候用到多个mask, 所有被mask的像素是组成真个图像尺寸。推理的时候mask满足, 多个分支 所有被mask的像素 构成整幅图像。也就是n个mask的情况下,mask=0的区域占n分之一.总的来说,就是用未被mask的像素预测mask的像素。
2024-08-07 19:40:00
1056
1
傅里叶变换及其应用(斯坦福大学stan).pdfbook.rar
2019-09-21
mfc:单文档中对话框类调用视图类和框架类成员变量的实例
2017-02-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅