由于前面的转化的图还不理想,这里再改进一下。
主要是哪个纬线是两头翘的,如果两边下压,或者中间拉长,可能会好一点;
另外,前面的边界点好象平滑,用多项式拟合下。所以分成二个.m文件
第一部分:
%世界地图校正
clear;clc;
rgb = imread('map0.jpg');
% 调试时缩小图像。
% rgb = imresize(rgb,0.2);
% figure,imshow(rgb) ;
[ h, w, v ] = size(rgb);
%建一个空图
Image = zeros ( h,w,v );
Image = uint8 ( Image );
ri0=zeros(1,h);%记录边界点位置(水平,右)
%找到右边界点
b=rgb(:,:,1);%一通道
pp=250;%阈值230,大于该值就是四角的白色了
for i=1: h
for j=w:-1: fix(w/3) % 从右到左 %fix去掉小数部分(取整)
if b(i, j)<pp %不是白色,则是球边界
ri0(i)=j;
Image(i,j,1)=255;%红色
break;
end
end
end
figure,imshow(Image) ;%(显示)边界准确吗?
%==========================&#