求MATLAB图像处理的程序:倾斜图像的检测与校正。最后的结果是要那个倾斜角度和校正后的图像

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了求MATLAB图像处理的程序:倾斜图像的检测与校正。最后的结果是要那个倾斜角度和校正后的图像相关的知识,希望对你有一定的参考价值。

参考技术A clear all
close all
bw=imread('你的你的你的你的.jpg');
bw=rgb2gray(bw);
figure,imshow(bw);title('灰度图像');
%================倾斜校正======================
qingxiejiao=rando_bianhuan(bw)
bw=imrotate(bw,qingxiejiao,'bilinear','crop');figure,imshow(bw);title('倾斜校正');
%取值为负值向右旋转

%%调用函数
function qingxiejiao=rando_bianhuan(I)
I=edge(I);%figure,imshow(I);
% I = zeros(100,100);
% I(25:75, 25:75) = 1;
theta = 1:180;
[R,xp] = radon(I,theta);
%figure,imagesc(theta,xp,R);colormap(hot);%title('R_\theta (X\prime)')%%imshow(theta,xp,R,[],'n')
[I,J] = find(R>=max(max(R)));%J记录了倾斜角
qingxiejiao=90-J;
%直线位置
% xlabel('\theta (degrees)');ylabel('X\prime');
% % colormap(hot)% colorbar IMAGE(C) displays matrix C as an image.
% title('R_\theta (X\prime)');
% colorbar;

图像倾斜校正算法的MATLAB实现:图像倾斜角检测及校正

技术图片技术图片?

原文链接:http://tecdat.cn/?p=13981 

随着多媒体技术的不断发展,数码相机,高清拍照手机等多媒体设备己经在人们的生活中占据了越来越重要的地位。

通过采用图像处理技术,可以将数码设备采 集到的文字、图片等信息转化成其他信息形势输出,例如转化成音频输出己解决视 障患者的视力需求。但是,由于输入设备或某些其他因素不可避免地使得采集到的 文本图像或多或少会出现某种程度的倾斜。因此,倾斜图像校正是当前文本图像研 宄领域中十分重要的课题,尤其在数字化、自动化领域。比如,提高OCR(Optical Character Recognition)识别率从而提高文档自动化处理效率,车牌号码自动 识别与交通监视,手写体自动识别,名片自动归类等。

基于Hough变换的图像倾斜校正算法

利用Hough变换检测的边框,确定边框直线的倾斜角度,根据倾斜角度旋转,获得校正后的图像。具体步骤如下:

图像预处理。读取图像,转换为灰度图像,去除离散噪声点。
利用边缘检测,对图像中的水平线进行强化处理。
基于Hough变换检测车牌图像的边框,获取倾斜角度。
根据倾斜角度,对车牌图像进行倾斜校正。

我们通过matlab解答以下问题:

 

当相机倾斜拍照时

建立数学模型,并将A校正。

技术图片技术图片?

 首先我们读取图像数据,显示原始彩色图像


clc;    % 清除命令窗口。
clearvars;
close all;  % 关闭所有数字(不包括imtool的数字。)
imtool close all;  % Close all imtool figures.
workspace;  % 关闭所有固定工具的数字
fontSize = 20;
format compact;
 
baseFileName = ‘附件B.jpg‘;
% 获取完整的文件名,并添加路径
fullFileName = fullfile( baseFileName);
 
rgbImage = imread(fullFileName);
% 获取图像的尺寸。 numberOfColorBands应该为3。
[rows columns numberOfColorBands] = size(rgbImage);
% 显示原始彩色图像
subplot(2, 2, 1);
imshow(rgbImage, []);
title(‘Original Color Image‘, ‘FontSize‘, fontSize);
技术图片

 

 技术图片技术图片?

确保它是8位灰度,而不是24位真彩色。通过阈值二值化图像。

% 确保它是8位灰度,而不是24位真彩色。
grayImage = rgb2gray(rgbImage);
% 通过阈值二值化图像。
binaryImage = grayImage > 128;
技术图片

技术图片技术图片?用连接性标记每个点,因此我们可以对其进行测量提取一个方向

% 用连接性标记每个斑点,因此我们可以对其进行测量


%获取所有blob属性。


%仅提取一个方向

%旋转图像。


% 显示旋转的图像。
subplot(2, 2, 3);
imshow(rotatedImage, []);
title(‘Rotated Image‘, ‘FontSize‘, fontSize);
技术图片

技术图片技术图片?

同时我们可以得到倾斜校正的角度。 

技术图片技术图片?

 

 

当相机垂直拍照时

根据B,建立数学模型,将B校正, 求出相机倾斜的角度。

同样的,我们可以对垂直拍照的图片进行矫正。

技术图片技术图片?

技术图片技术图片?

 

将C校正,并说明相机相对于物体的夹角。

技术图片技术图片?

技术图片技术图片?

 


相关文献

 

1.使用opencv在python中进行图像处理的简介

 

2.matlab中的偏最小二乘回归(plsr)和主成分回归(pcr)

 

3.matlab中使用vmd变分模态分解

 

4.matlab使用hampel滤波去除异常值

 

5.matlab使用经验模式分解emd-对信号进行去噪

 

6.matlab中的偏最小二乘回归(plsr)和主成分回归(pcr)

 

7.matlab使用copula仿真优化市场风险

 

8.r语言高级图像处理

 

9.matlab实现mcmc的马尔可夫切换arma-garch模型估计

 

以上是关于求MATLAB图像处理的程序:倾斜图像的检测与校正。最后的结果是要那个倾斜角度和校正后的图像的主要内容,如果未能解决你的问题,请参考以下文章

图像倾斜校正算法的MATLAB实现:图像倾斜角检测及校正

MATLAB 图像校正,希望路过的大神抽点宝贵的时间出来为我解决一下

数字图像处理PDF文字倾斜旋转校正

在opencv python中对图像进行倾斜检测的代码

如何利用opencv计算图像畸变系数,并进行校正与摄像机标定?

opencv图像倾斜校正和切边