数字图像处理畸变校正
- 格式:doc
- 大小:371.00 KB
- 文档页数:9
—191—数码相机设计中图像几何畸变校正的实现万 峰,杜明辉(华南理工大学电信学院,广州 510641)摘 要:由于光学镜头的生产工艺等原因,数码相机拍摄图像常常会出现非线性的几何畸变。
针对这一常见问题,采用基于MSE 拟合、双线性插值的方法对拍摄图像进行校正。
实验结果表明,该方法能够在保证无颜色失真的条件下获得较为理想的校正结果。
关键词:几何畸变;MSE ;双线性插值Correction of Lens Distortion in Digital Camera DesignWAN Feng, DU Minghui(Department of Communication and Electronic Engineering, South China University of Technology, Guangzhou 510641)【Abstract 】 Nonlinear geometry distortion is an general problem in digital camera design because of arts and crafts of optical lens. This paper gives a solution which is based on MSE and bilinear interpolation. Experiments show that this method is efficient and accurate. 【Key words 】Geometry distortion; MSE; Bilinear interpolation计 算 机 工 程Computer Engineering 第31卷 第17期Vol.31 № 17 2005年9月September 2005·工程应用技术与实现·文章编号:1000—3428(2005)17—0191—02文献标识码:A中图分类号:TP391.4为了真实再现拍摄者观察到的景像,图像几何畸变的校正一直以来都是数码相机开发中重要的研究题目。
镜头畸变的原理及校正方法一、镜头畸变的原理镜头畸变是指在摄影过程中,由于光线通过透镜时的物理特性而导致图像出现扭曲、拉伸或压缩等失真现象。
主要分为两种类型:1.径向畸变:在图像中心呈现正常形态,但越靠近边缘部分,图像会出现拉伸或压缩的现象。
2.切向畸变:在图像中心和边缘部分都会出现失真,表现为图像的水平或垂直线条不再是直的而是弯曲。
二、校正方法1.软件校正法利用数字图像处理软件如Photoshop、Lightroom等进行校正。
具体步骤如下:(1)打开需要校正的图片,在菜单栏选择“滤镜”-“相机失真”。
(2)在弹出的对话框中选择适当的相机模型和镜头型号,并勾选“去除畸变”选项。
(3)点击确定按钮即可完成校正。
2.硬件校正法通过使用特殊设计的镜头来避免或减少畸变。
这种方法比较昂贵,适用于专业摄影师和高端用户。
具体步骤如下:(1)选择适合的镜头,如鱼眼镜头或移轴镜头等。
(2)在拍摄时调整相机和镜头的位置,使其达到最佳效果。
3.手动校正法通过手动调整相机和镜头的位置来避免或减少畸变。
这种方法比较简单易行,但需要一定的技巧和经验。
具体步骤如下:(1)在拍摄前,先观察场景并确定需要调整的部分。
(2)调整相机和镜头的位置,使其达到最佳效果。
(3)在后期处理时可以使用软件进行进一步校正。
总之,在摄影过程中避免畸变是非常重要的,可以通过以上方法进行校正。
不同类型的畸变需要采用不同的校正方法,并且需要针对具体情况进行调整。
只有掌握了正确的校正方法才能拍摄出更加真实、美丽、自然的照片。
自动修复图像畸变:Adobe Premiere Pro的图像修复技巧在视频编辑中,图像畸变是一个常见的问题。
无论是因为镜头问题、摄像机抖动还是其他因素,图像畸变都可能影响到最终的视觉效果。
为了解决这个问题,Adobe Premiere Pro提供了一系列的图像修复技巧,可以帮助我们自动修复图像畸变,提升视频的质量。
首先,打开Adobe Premiere Pro软件并导入你想修复的视频素材。
在项目面板中,右键点击素材并选择“新序列”,以创建一个新的序列。
一、镜头校正(Lens Correction)在Adobe Premiere Pro中,镜头校正是修复图像畸变的一种常用技巧。
在您的序列上,右键点击,选择“源设置”并打开“镜头校正”。
在镜头校正窗口中,您可以看到多个校正选项,如消除透视畸变、减少鱼眼效果等。
根据您的具体需求,选择适当的选项进行调整。
对于较为明显的透视畸变,可以使用消除透视畸变选项。
通过调整参数,您可以将图像中的垂直线条恢复为直线。
对于鱼眼效果,可以使用减少鱼眼效果选项来修复。
通过适当调整参数,您可以使圆形或弯曲的物体看起来更加自然。
二、扭曲校正(Warp Stabilizer)除了镜头校正,扭曲校正也是修复图像畸变的另一种常用技巧。
在您的序列上,右键点击并选择“源设置”,然后打开“效果控件”。
在效果控件窗口中,您可以找到扭曲校正效果。
将其拖放到您要修复的视频素材上,并调整参数以获得最佳效果。
通过扭曲校正,您可以彻底消除或减轻图像中的抖动或摇晃效果。
这对于手持拍摄的素材特别有用,可以使其更加稳定和清晰。
三、去噪(Noise Reduction)图像中的噪点是另一个常见的问题。
幸运的是,Adobe Premiere Pro还提供了去噪的工具,可以帮助我们消除图像中的噪点。
在效果控件窗口中,搜索“噪点减少”效果,并将其拖放到要修复的视频素材上。
调整参数以减少噪点,并注意不要过度降低图像的细节。
一步步教你使用图像处理软件进行图像编辑图像处理是一种重要的数字图像处理技术,允许人们对图像进行各种操作和编辑。
在图像处理软件的帮助下,我们可以轻松地修复照片中的问题、增强图像的颜色和对比度,以及创建各种特效效果。
本文将一步步教你如何使用图像处理软件进行图像编辑,并提供一些实用技巧。
第一章:了解图像处理软件在使用图像处理软件之前,我们需要了解不同软件的功能和特点。
常见的图像处理软件包括Adobe Photoshop、GIMP和Corel PaintShop Pro等。
这些软件都提供了专业级的图像处理工具和功能,但使用界面和操作方法可能略有不同。
了解软件的操作界面和基本功能是使用图像处理软件的第一步。
第二章:导入和保存图像要开始图像编辑,首先需要导入图像到软件中。
图像处理软件通常支持多种图像格式,如JPEG、PNG和BMP等。
通过点击软件界面上的“文件”选项,然后选择“打开”或“导入”命令,可以将图像导入到软件中。
在进行图像编辑之前,为了防止原始图像被修改或破坏,建议先保存原始图像的副本。
通过点击软件界面上的“文件”选项,然后选择“另存为”命令,可以将编辑后的图像保存为新的文件。
第三章:图像调整和增强图像调整和增强是图像处理的核心内容之一。
通过调整图像的亮度、对比度、色调和饱和度等参数,可以改善图像的视觉效果。
大多数图像处理软件提供了直观的调整工具,如亮度/对比度调整器、色彩平衡调整器和曲线调整器等。
如果需要针对特定部分进行调整,可以使用选择工具或蒙版工具。
通过选择要调整的区域,然后应用相应的调整工具,可以对图像的局部进行增强。
第四章:修复和矫正图像在图像处理中,经常需要修复图像中的瑕疵和缺陷。
常见的修复工具包括修复画笔、克隆工具和修复工具。
通过选择合适的修复工具,然后在图像上进行刷修,可以轻松地去除图像中的污点、刮痕和红眼等问题。
此外,还可以使用矫正工具来修复图像的畸变和扭曲。
通过选择矫正工具,然后在图像中标记参考点,软件将自动校正图像的透视畸变和倾斜。
相机畸变校正参数摘要:一、相机畸变校正的重要性二、畸变校正参数的设置方法1.垂直方向畸变校正2.水平方向畸变校正3.色彩失真校正4.像素级畸变校正三、畸变校正软件推荐与使用教程四、校正过程中应注意的问题正文:相机畸变校正参数在摄影和图像处理领域,畸变校正一直是一个热门话题。
畸变是指镜头在拍摄过程中对图像产生的失真现象,主要包括垂直方向畸变、水平方向畸变、色彩失真和像素级畸变等。
畸变校正的目的就是消除这些失真,还原图像的本来面目。
本文将详细介绍相机畸变校正参数的设置方法,以及一些实用的畸变校正软件和注意事项。
一、相机畸变校正的重要性相机畸变校正的重要性不言而喻。
畸变校正可以提高图像质量,使画面更加真实、自然。
在进行畸变校正之前,我们先来了解一下畸变的类型。
1.垂直方向畸变:当镜头焦距变化时,图像的四角会出现不同程度的变形。
2.水平方向畸变:镜头在水平方向上对图像产生的失真。
3.色彩失真:由于镜头材料、光线反射等因素,图像的色彩可能会产生偏差。
4.像素级畸变:像素尺寸和镜头焦距的比值会导致图像边缘的像素变形。
二、畸变校正参数的设置方法在进行畸变校正时,我们需要针对不同类型的畸变进行相应的参数设置。
以下为常见的畸变校正参数设置方法:1.垂直方向畸变校正:通过调整镜头的垂直方向畸变参数,可以有效消除图像四角的变形。
大多数相机和图像处理软件都提供了垂直方向畸变校正功能,用户可以根据实际拍摄效果进行调整。
2.水平方向畸变校正:水平方向畸变校正相对简单,一般可通过裁剪图像或使用图像处理软件进行校正。
3.色彩失真校正:色彩失真校正需要针对不同镜头进行调整。
用户可以通过相机提供的白平衡设置、后期处理软件的色彩调整功能等方式进行校正。
4.像素级畸变校正:像素级畸变校正较为复杂,通常需要使用专业的图像处理软件进行。
这类软件可以对图像进行像素级别的调整,使画面更加平整。
三、畸变校正软件推荐与使用教程市面上有许多畸变校正软件,这里推荐几款较为实用的:1.Adobe Lightroom:一款强大的图像处理软件,内置了畸变校正功能。
摄像机畸变的非量测校正方法研究摄像机的畸变摄像机是一种常用的图像采集设备,其使用广泛于数字图像处理、机器视觉、虚拟现实等领域。
然而,摄像机的光学系统可能会存在畸变问题,导致采集的图像出现变形、扭曲等情况,影响图像质量及后续的图像处理。
因此,如何对摄像机的畸变进行校正成为一个相对重要的问题。
摄像机的畸变一般分为径向畸变和切向畸变两种类型。
径向畸变通常表现为圆形或放射状畸变,即图像的形状会发生变形,对象的形状会变成扭曲的。
切向畸变则以直线变弯曲为主要表现。
这些畸变通常是形成于摄像机的镜头或成像传感器上。
校正摄像机的畸变可以采用量测校正方法和非量测校正方法。
量测校正方法需要进行实际的测量,利用校正板等工具测量相机的畸变系数,然后使用这些系数进行畸变校正。
而非量测校正方法则是不需要进行实际测量,而是通过程序处理进行校正。
本文将介绍一种基于拟合径向畸变函数的非量测校正方法。
拟合径向畸变函数径向畸变是摄像机最常见的畸变类型,经过统计分析可以得知,径向畸变的变化可以近似成多项式函数。
具体来说,若将相机成像的平面设为xoy平面,则对于光线从透镜心到xoy平面位置的距离为r的位置,径向畸变通常可表示为以下多项式函数:$$ \\begin{aligned} x_{d}&=x_{c}(1+k_1r^2+k_2r^4+k_3r^6+...)\\\\y_{d}&=y_{c}(1+k_1r^2+k_2r^4+k_3r^6+...) \\end{aligned} $$其中,x c和y c表示无畸变情况下的坐标,x d和y d表示经过畸变处理后的坐标。
k1、k2、k3等系数则是径向畸变函数的参数,通常通过将相似位置的坐标进行比较来计算。
非量测法校正径向畸变我们现在有一个任务是非量测法校正径向畸变,下面是对应步骤:步骤1:提取畸变图像的特征点首先,需要从已知的畸变图像中提取特征点。
常用的特征点提取方法包括SIFT、SURF、ORB等。
摄影测量中的畸变校正技术与方法解析摄影测量是一种通过相机和传感器来测量地理信息的技术方法。
然而,在实际的摄影测量过程中,由于光学系统的限制和成像环境的不完美,图像中常常存在着各种畸变,这些畸变会严重影响测量的精度和准确性。
为了解决这一问题,研究人员们提出了各种畸变校正技术与方法。
一、镜头畸变的分类在摄影测量中,常见的镜头畸变主要有径向畸变和切向畸变两类。
1. 径向畸变:径向畸变又称为径向畸变,是由于光学系统的透镜形状不完美而导致的。
径向畸变会使得图像中心和边缘的像素变形,通常呈现出一种鱼眼形状,也就是所谓的“鱼眼畸变”。
2. 切向畸变:切向畸变是由于相机的成像平面与透镜的光轴之间不完全平行而引起的。
切向畸变会使得图像的水平和垂直线条弯曲,失去真实的几何形状。
二、畸变校正的需求畸变校正在摄影测量中非常重要。
首先,畸变会严重影响图像中目标物体的几何形状和尺寸,从而影响后续的测量和分析工作。
其次,在数字图像处理中,畸变也会对图像配准、图像拼接和三维重建等任务造成困扰。
因此,畸变校正是提高摄影测量精度和数据可靠性的关键技术之一。
三、畸变校正技术与方法1. 基于几何模型的畸变校正方法:基于几何模型的畸变校正方法主要是采用数学方法对图像进行几何校正,以恢复图像中目标物体的真实形状和几何特征。
常见的方法有极向投影法、鱼眼校正法、逆向映射法等。
2. 基于数学模型的畸变校正方法:基于数学模型的畸变校正方法主要是通过建立适当的数学模型来描述畸变,并通过参数估计和优化方法来对畸变进行校正。
常用的数学模型有多项式畸变模型和透镜失真模型。
3. 基于特征匹配的畸变校正方法:基于特征匹配的畸变校正方法主要是通过在图像中提取特征点,并通过匹配这些特征点来进行畸变校正。
常见的特征匹配算法有SIFT、SURF和ORB等。
四、畸变校正的应用领域畸变校正技术与方法在众多领域中都有广泛的应用。
其中,地理信息系统(GIS)、计算机视觉、机器人视觉和虚拟现实等领域对畸变校正有着较高的需求。
一、概述MATLAB是一种强大的数学软件,被广泛应用于工程和科学计算领域。
在计算机图形学和计算机视觉领域,MATLAB也是一个常用的工具,用于处理图像和进行图像畸变校正。
其中,切向畸变和斜切是图像处理中常见的问题,本文将介绍MATLAB中如何处理三阶切向畸变和斜切问题。
二、切向畸变的概念1.1 切向畸变是指在摄影过程中,由于相机镜头的非完美属性,导致图像中的直线在图像平面上表现为曲线的现象。
这种畸变是由于镜头形状和光学设计不完美造成的。
1.2 在实际应用中,切向畸变会影响图像中的对象形状和位置,降低图像质量,给图像分析与处理带来困难。
三、MATLAB处理三阶切向畸变问题2.1 导入图像在MATLAB中,可以通过imread函数导入需要处理的图像,形成矩阵表示。
2.2 获取畸变矫正参数利用MATLAB中的相机标定工具箱,可以获取相机的内参矩阵和畸变参数,这些参数可以用来对图像进行畸变矫正。
2.3 畸变矫正利用相机标定工具箱获取的畸变参数,可以利用MATLAB中的undistortImage函数对图像进行畸变矫正,将图像中的曲线变为直线。
2.3.1 输入畸变图像2.3.2 利用undistortImage函数进行畸变矫正2.3.3 输出矫正后的图像四、斜切的概念3.1 斜切是指在图像处理中,通过对图像的变换将图像按一个方向进行平移。
斜切会使图像中的对象发生形变,影响图像的识别和分析。
3.2 在图像处理中,对斜切的处理是一项基本工作,可以通过斜切矩阵对图像进行变换,消除斜切引起的影响。
五、MATLAB处理斜切问题4.1 生成斜切矩阵在MATLAB中,可以通过矩阵操作生成斜切矩阵,用来对图像进行斜切变换。
4.2 斜切变换利用生成的斜切矩阵,可以对图像进行斜切变换,将图像按指定方向进行平移。
4.2.1 输入原始图像4.2.2 生成斜切矩阵4.2.3 利用斜切矩阵对图像进行变换4.2.4 输出斜切变换后的图像六、实例分析5.1 实例一:对一张包含直线的图像进行三阶切向畸变矫正5.1.1 导入原始图像5.1.2 获取相机的内参矩阵和畸变参数5.1.3 利用undistortImage函数对图像进行畸变矫正5.1.4 输出矫正后的图像5.2 实例二:对一张倾斜的图像进行斜切变换5.2.1 导入原始图像5.2.2 生成斜切矩阵5.2.3 利用斜切矩阵对图像进行变换5.2.4 输出斜切变换后的图像七、总结6.1 本文介绍了MATLAB中处理三阶切向畸变和斜切的方法和步骤。
opencv畸变校正代码解析(实用版)目录一、OpenCV 简介二、图像畸变校正原理三、OpenCV 畸变校正方法四、OpenCV 畸变校正代码解析五、总结正文一、OpenCV 简介OpenCV(Open Source Computer Vision Library)是一个开源的计算机视觉库,它包含了大量的图像处理和计算机视觉方面的算法。
OpenCV 提供了丰富的功能,可以用于实现各种图像处理任务,如图像畸变校正、目标检测、图像识别等。
二、图像畸变校正原理图像畸变校正是指通过一系列的变换方法,将图像中的畸变部分恢复到正常状态。
图像畸变主要分为两大类:切向畸变和径向畸变。
切向畸变是指图像中某一方向的线段在畸变后偏离了原来的方向,而径向畸变是指图像中某一区域的线段在畸变后长度发生了变化。
三、OpenCV 畸变校正方法OpenCV 中提供了多种畸变校正方法,如基于单应性矩阵的畸变校正、基于透视变换的畸变校正等。
这些方法都可以有效地对图像中的畸变进行校正。
四、OpenCV 畸变校正代码解析以下是一个基于 OpenCV 的畸变校正代码示例,主要用于实现鱼眼相机畸变校正:```cpp#include <iostream>#include <opencv2/core.hpp>#include <opencv2/highgui.hpp>#include <opencv2/imgproc.hpp>using namespace std;using namespace cv;bool try_use_gpu = false;void help(){cout <<"Please specify the command line options.The available options are:"" --help This help message"" --image <filename> The input image file"" --output <filename> The output image file"";}int main(int argc, char** argv){if (argc!= 3){help();return -1;}// Read the input imageMat img = imread(argv[1], IMREAD_COLOR);if (img.empty()){cout << "Can"t read the image file." << endl;return -1;}// Perform the fisheye correctionMat corrected_img;fisheye_correction(img, corrected_img, Mat(), Mat(), 0, 0);// Save the output imageimwrite(argv[2], corrected_img);return 0;}```五、总结本文主要介绍了 OpenCV 中的图像畸变校正方法,并以鱼眼相机畸变校正为例,给出了一个具体的代码示例。
相机畸变矫正算法是一种用于校正相机镜头畸变的技术,它可以通过对图像进行畸变检测和校正,提高图像的清晰度和准确性。
以下是该算法的简要介绍:1. 畸变检测:相机镜头在拍摄过程中会产生畸变,导致图像失真。
畸变检测的目的是确定镜头畸变的大小和类型,以便进行后续的校正。
常用的畸变检测方法包括图像畸变测量、径向畸变模型和切向畸变模型等。
2. 校正方法:相机畸变校正的方法有多种,包括径向畸变校正、切向畸变校正、全局畸变校正和局部畸变校正等。
其中,径向畸变校正算法是最常用的方法之一,它可以通过提取图像中的径向对称性来估计畸变参数,并进行校正。
常用的径向畸变校正算法包括基于点匹配的方法、基于特征检测的方法和基于深度学习的方法等。
在实现过程中,算法通常会采用以下步骤:1. 采集畸变图像:使用带有畸变的相机拍摄一组标准图像,这些图像包含多种不同的场景和物体,以便于检测和校正镜头畸变。
2. 图像预处理:对采集到的图像进行预处理,包括去噪、增强对比度等操作,以提高后续检测和校正的准确性。
3. 提取畸变参数:使用图像处理算法,如径向畸变模型,提取图像中的畸变参数,包括径向畸变的中心点、半径和角度等。
4. 校正图像:根据提取的畸变参数,使用校正算法对图像进行畸变校正,以恢复原始图像的清晰度和准确性。
在实际应用中,相机畸变矫正算法可以提高图像的质量和准确性,广泛应用于相机标定、视觉定位、机器人导航等领域。
同时,随着计算机视觉技术的不断发展,深度学习和神经网络等算法也在相机畸变矫正领域得到了广泛应用,提高了算法的准确性和效率。
总之,相机畸变矫正算法是一种重要的技术,它通过检测和校正相机镜头畸变,提高图像的清晰度和准确性,为视觉应用提供了更好的支持。
数字图像处理畸变校正 数 字 图 像 处 理
图像畸变及校正 1 图像畸变介绍 从数字图像处理的观点来考察畸变校正, 实际上就是一个图像恢复的过程, 就是对一幅退化了的图像进行恢复。在图像处理中,图像质量的改善与校正技术,也就就是图像复原,当初就是在处理从人造卫星发送回来的劣质图像的过程中发展、完善的。目前,图像畸变校正的应用领域越来越广,几乎所有涉及应用扫描与成像的领域都需要畸变校正。图像在生成与传送的过程中,很可能会产生畸变,如:偏色、模糊、几何失真、几何倾斜等等。前几种失真主要就是体现在显示器上,而后一种失真则多与图像集角度有关。不正确的显影,打印、扫描,抓拍受反射光线的影响等方式,都会使图像产生偏色现像。模糊、几何畸变主要就是在仪器采集图片过程中产生,大多就是因机器故障或操作不当影响导致,如在医学成像方面。而几何空间失真广泛存在于各种实际工程应用中,尤其就是在遥感、遥测等领域。 2 畸变产生的原因 在图像的获取或显示过程中往往会产生各种失真(畸变):几何形状失真、灰度失真、颜色失真。引起图像失真的原因有:成像系统的象差、畸变、带宽有限、拍摄姿态、扫描非线性、相对运动等;传感器件自身非均匀性导致响应不一致、传感器件工作状态、非均匀光照条件或点光源照明等;显示器件光电特性不一致;图像畸变的存在影响视觉效果,也就是影响图像检测系统的形状检测与几何尺寸测量精度的重要因素之一。 3 图像畸变校正过程所用到的重要工具 灰度直方图就是关于灰度级分布的函数,就是对图象中灰度级分布的统计。灰度直方图就是将数字图象中的所有像素,按照灰度值的大小,统计其所出现的频度。通常,灰度直方图的横坐标表示灰度值,纵坐标为想像素个数。直方图上的一个点的含义就是,图像存在的等于某个灰度值的像素个数的多少。这样通过灰度直方图就可以对图像的某些整体效果进行描述。从数学上讲,图像的灰度直方图就是图像各灰度值统计特征与图像灰度值出现的频率。从图形上来讲,它就是一个一维曲线,表征了图像的最基本的统计特征。 作为表征图像特征的信息而在图像处理中起着重要的作用。由于直方图反映了数字图像处理畸变校正 图像的灰度分布状况,所以从对图像的观察与分析,到对图像处理结果的评价,灰度直方图都可以说就是最简单、最有效的工具。 4 图像颜色畸变校正介绍 图像颜色畸变现象可以就是由摄像器材导致,也可以就是由于真实环境本身就偏色导致,还有的就是由于图像放置过久氧化、老化导致。无论其产生的原因如何,其校正方法都就是类似的。 如果用Matlab显示颜色畸变的图像RGB基色直方图 ,发现相对正常图像,颜色畸变的图像的直方图的三种基色的直方图中至少有一个直方图的像素明显集中集中在一处,或则集中在0处或则集中在255处,而另一部分有空缺,或则集中在中间而两边空,因此通过调整该直方图的像素点的像素值在区间[0,255]上的分布来解决图像颜色畸变问题。如果直方图中像素集中在0一边则说明该基色偏暗,如果集中在255处则说明该基色偏亮。下图就是一有颜色畸变的图像的基色B的直方图。
图1 基色B的直方图 很明显几乎所有像素点都集中在区间[a,b]上,这就是偏暗的情况。那么要做的就是把代表基色B的矩阵的数据拉伸,使得区间[a,b]扩大为区间[a,c]。只要做以下处理即可得到以上目的。对每一个x ,x在[a,b]上,x*(c-a)/(b-a),而所有的y,y在区间[b,c]上,y=c,c=255。 MATLAB中的算法实现如下: function dealcolor(pic,k,d) a=imread(pic); %提取指定图像到矩阵a b=double(a); %将矩阵a的数据转化为double型 [m,n]=size(b(:,:,k)); %取图像矩阵的行列数 fr=255/d; %设定拉伸系数 for i=1:m % 二重循环 对矩阵内的每一个数据进行处理 for j=1:n bm=b(i,j,k)*fr; % 拉伸处理 if bm>255 %将所有值大于255的点都设为255 bm=255; 数字图像处理畸变校正 end b(i,j,k)=bm; end end c=uint8(b); %将矩阵b转化为8个字节的整型数据 image(c); %显示处理过的图像 注释:a ——— 要处理的图像矩阵,就是一个三维矩阵 pic ——— 要处理的图像的路径 k ——— 要处理的第几个基色矩阵,1、2、3分别代表R、G、B d ——— 向量,它的值就是要拉伸的像素值中的最大值,0~255之间
5 图像模糊校正算法介绍 图像的灰度变化情况可以表现为一曲线。当读入一个图像后,灰度变化就转变成了矩阵数据的变化。反映数据变化的数学手段可以采用微分算子。从数学的微分含义来瞧,“一阶微分”就是描述“数据的变化率”,“二阶微分”就是描述“数据变化率的变化率”。在感应灰度变化方面,二阶微分比一阶微分更具敏感性,尤其就是对斜坡渐变的细节。因此采用二阶微分算子来处理。 最简单的各向同性微分算子就是拉普拉斯微分算子。设原图为f(x,y),一个二
维的拉普拉斯微分算子定义为:22222yfxff 将它展开就得到 )1,()1,(),1(),1(),(42yxfyxfyxfyxfyxff。写成图像处理运
算模版的形式就就是010141010L。 设处理后的图像为g(x,y),则 ),(),(),(2yxfyxfyxg。用模板表示则就是
0101510100L,模板中心点就就是要处理的像素点。如果连对角线方向都考
虑的话,模板的形式就表现为1111911111L。 由于模板就是一个3阶矩阵,所以模板处理不了图像矩阵边缘的点。将这些处理不了的点像素值都设置为255。 在Matlab中的算法实现为: function pic_tem = pick_tem(b,x,y,j,tem_n) % b就是一个三维矩阵,j 就是代表数字图像处理畸变校正 第几层矩阵 %tem_n代表模板号0代表采用第一种模板,1代表采用第二种模板 if tem_n==0 %第一种模板 %返回二阶微分处理后的值 pic_tem=5*b(y,x,j)-(b(y,x-1,j)+b(y+1,x,j)+b(y-1,x,j)+b(y,x+1,j)); else %第二种模板 %返回二阶微分处理后的值 pic_tem=9*b(y,x,j)-(b(y-1,x-1,j)+b(y-1,x,j)+b(y-1,x+1,j)+b(y,x-1,j)+b(y+1,x+1,j)+b(y+1,x-1,j)+b(y+1,x,j)+b(y+1,x+1,j)); end function faintness(pic,tem_n) %pic代表处理的图片的路径,tem_n代表采用第几种模板 a=imread(pic); %导入图像,并把数据存放到三维矩阵a中 b=double(a); %将数据转化为双精度 [h,w,k]=size(b); %取矩阵的维数 g=zeros(h,w,k)+255; %生成一个与原图像矩阵有相同维数的矩阵g for y=2:h-1 %剔除图像矩阵最外一层的点,处理可以被模板包含的点 for x=2:w-1 for j=1:k g(y,x,j)=pick_tem(b,x,y,j,tem_n); %采用二阶微分算子处理,返回处理点(x,y)后的像素值 end end end image(uint8(g));%显示处理后的图像
6图像几何畸变校正算法介绍 对于畸变的光学系统,畸变空间中的直线在像空间中一般不再就是直线,而只有通过对称中心的直线就是例外。因此在进行桶形畸变校正时须先找出对称中心,再进行通用的几何畸变校正过程。 桶形畸变校正一般步骤: (1)找出畸变图对称中心,将畸变图代表的地址空间关系转换为以对称中心为原点的空间关系。 (2)空间变换:对输入图像(畸变图)上像素重新排列以恢复原空间关系。即利用地址映射关系为校正图空间上的每一个点找到它们在畸变图空间上的对应点。 (3)灰度插值:对空间变换后的像素赋予相应的灰度值以恢复原位置的灰度值。 几何畸变的校正要使用几何(坐标)变换,包括平行移动、旋转、扩大缩小等简单的变换。 在这里,先在直角坐标系下研究地址映射关系,在程序中则使用矩阵坐标系。设[f(x,y)]就是原图,[f(u,v)]就是发生畸变后的图像。 数字图像处理畸变校正 畸变校正的基本思想就是,找出由(u,v) (x,y)的坐标变换T(地址映射),然后令:)),((),(vuTfyxf 为参数向量。若畸变只就是简单的纵横比的改变与倾斜,那么仿射变换可以校正这种畸变。取:FEDCBAT,,,,,: CBxAux ][FEvDuy x表示去最接近x的整数
若能得到参数的估计,问题就可以解决了。 但一般的畸变都不只就是简单的纵横比的改变与倾斜,通常遇到的都就是空间扭曲型几何畸变,俗语讲就就是橡胶层面拉伸。它就是曲线畸变,这里采用二次多项式来模拟它,可表示为: 25423210yaxyaxayaxaau(1) 25423210ybxybxbybxbbv(2)
同样,只要可以取得参数),(iiba的估计,畸变函数便可知,那么原则上,可以通过上式多项式变换来获得修正的空间扭曲映射。 (1)与(2)都就是一个有6个参数的二元二次方程,那么只要在畸变图与校正图上各取六对对应点(其中从校正图上的点就是估计值)就可以通过解方程组得到参数),(iiba的估计,理论上,取的对应点对数越多得到的参数),(iiba估计就越精确。设取m对对应点,用向量来表示为 ],...,,[21mtuuuU ],...,,[21mtvvvV
2222222222211121111............11mmmmmmyyxxyxyyxxyxyyxxyxA
其系数 ],...,,[10mtaaaa ],...,,[10mtbbbb 假设所取的m对对应点组成的矩阵A可逆,也就就是说m对对应点线性不相关,则容易计算得到系数),(iiba:UAa VAb 由于采用灰度插值,所以在校正的处理过程就是对校正图上每一点映射到畸变图,然后通过灰度插值来得到这一点的灰度值。因此校正所采用的就是地址逆映射: ayxyxyxu*,,,,,122 byxyxyxv*,,,,,122 ()