【论文地址】
https://arxiv.org/abs/2301.01661
【训练源码】
https://github.com/KangLiao929/RecRecNet
【参考源码】
https://github.com/hpc203/recrecnet-opencv-dnn
【算法介绍】
广角镜头在VR技术中显示出诱人的应用,但它会在捕获的图像中引入严重的径向失真。为了恢复逼真的场景,之前的工作致力于校正广角图像的内容。然而,这种校正解决方案不可避免地会扭曲图像边界,从而改变相关的几何分布并误导当前的视觉感知模型。在这项工作中,我们通过贡献一种新的学习模型,即矩形校正网络(RecRecNet),探索在内容和边界上构建双赢的表示。特别地,我们提出了一种薄板样条(TPS)模块来描述图像的矩形化非线性非刚性变换。通过学习校正图像上的控制点,我们的模型可以灵活地将源结构扭曲到目标域,实现端到端的无监督变形。为了减轻结构近似问题的复杂性,我们激励我们的RecRecNet通过基于自由度(DoF)的课程学习来学习渐进变形规则。通过增加每个课程阶段的自由度,即从相似性变换(4-DoF)到单应性变换(8-DoF),网络能够研究更详细的变形,从而在最终的矩形化任务上实现快速收敛。实验表明,我们的解决方案在定量和定性评估方面都优于比较方法。
问题
给定一个校正的广角图像,RecRecNet旨在从校正技术的角度在图像内容和边界上构建双赢表示。
特点
首次实现大视野(FoV)视觉的双赢表示
提出了一个薄板样条(TPS)运动模块,以灵活地形成非线性非刚性校正变换
设计了一种基于DoF的课程学习,以掌握渐进变形规则并减轻复杂结构近似的负担
深入分析了为什么变形的图像边界会显著影响视觉感知模型
【界面展示】
【效果展示】
【部分实现代码】
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using OpenCvSharp;
namespace FIRC
{
public partial class Form1 : Form
{
Mat src = new Mat();
RecRecNet net=new RecRecNet();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "图文件(*.*)|*.jpg;*.png;*.jpeg;*.bmp";
openFileDialog.RestoreDirectory = true;
openFileDialog.Multiselect = false;
if (openFileDialog.ShowDialog() == DialogResult.OK)
{
src = Cv2.ImRead(openFileDialog.FileName);
pictureBox1.Image = OpenCvSharp.Extensions.BitmapConverter.ToBitmap(src);
}
}
private void button2_Click(object sender, EventArgs e)
{
if(pictureBox1.Image==null)
{
return;
}
var resultMat = net.Inference(src);
pictureBox2.Image= OpenCvSharp.Extensions.BitmapConverter.ToBitmap(resultMat); //Mat转Bitmap
}
private void Form1_Load(object sender, EventArgs e)
{
net.LoadWeights(Application.StartupPath+ "\\weights\\model_deploy.onnx");
}
private void button3_Click(object sender, EventArgs e)
{
}
}
}
【测试环境】
vs2019
netframeowrk==4.7.2
opencvsharp==4.8.0
【视频演示】
C#使用opencvsharp部署RecRecNet广角图像畸变矫正校正摄像广角镜头畸变图像_哔哩哔哩_bilibili【测试环境】vs2019netframeowrk==4.7.2opencvsharp==4.8.0更多信息参考博文:https://blog.csdn.net/FL1623863129/article/details/139760635, 视频播放量 0、弹幕量 0、点赞数 0、投硬币枚数 0、收藏人数 0、转发人数 0, 视频作者 未来自主研究中心, 作者简介 未来自主研究中心,相关视频:C#使用onnxruntime部署Detic检测2万1千种类别的物体,yolov5最新版onnx部署Android安卓ncnn,C#使用纯opencvsharp部署yolov8-onnx图像分类模型,图像二值化工具使用教程,OpenCvSharp利用微信二维码引擎实现二维码识别,C# winform使用纯opencvsharp部署yolox-onnx模型,C# winform YOLO区域入侵检测任意形状区域绘制射线算法实现演示,我在B站上大学!【完整版-麻省理工-微积分重点】全18讲!学数学不看的微积分课程,看完顺滑一整年。_人工智能数学基础/机器学习/微积分/麻省理工/高等数学,C#使用dlibdotnet实现人脸检测人脸对齐特征点检测人脸对比facemesh等功能,👴一定是天才 6.1https://www.bilibili.com/video/BV1zJ4m1u7VZ/
【源码下载】
https://download.csdn.net/download/FL1623863129/89448917