上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 79 下一页
摘要: 依然是计算几何。射线法判断点与多边形关系原理如下:从待判断点引出一条射线,射线与多边形相交,如果交点为偶数,则点不在多边形内,如果交点为奇数,则点在多边形内。原理虽是这样,有些细节还是要注意一下,比如射线过多边形顶点或射线与多边形其中一边重合等情况还需特别判断。这里就不特别判断了,因为我只是熟悉原理... 阅读全文
posted @ 2014-10-11 22:27 Dsp Tian 阅读(6703) 评论(0) 推荐(0)
摘要: 最近总是对计算几何方面的程序比较感兴趣。多圆求交点,要先对圆两两求交点。有交点的圆分为相切圆和相交圆。相切圆求法: 1.根据两圆心求直线 2.求公共弦直线方程 3.求两直线交点即两圆切点。相交圆求法: 1.求公共弦方程直线。 2.公共弦直线方程和其中一个圆方程联立求解即可。公共弦直线方程就... 阅读全文
posted @ 2014-10-10 21:23 Dsp Tian 阅读(6959) 评论(0) 推荐(0)
摘要: 处理原理就是将邻域像素平均值赋给邻域中的所有像素。这里将处理方法分为了带线条和不带线条,带线条处理后的视觉效果要好些。原图:处理结果(不带线条):处理结果(带线条):代码处理的是带线条的情况。matlab代码如下:clear all; close all;clc;img=imread('lena.j... 阅读全文
posted @ 2014-10-06 17:07 Dsp Tian 阅读(14332) 评论(0) 推荐(1)
摘要: 生成简单多边形后,有时还需要对多边形各顶点的凹凸性做判断。先计算待处理点与相邻点的两个向量,再计算两向量的叉乘,根据求得结果的正负可以判断凹凸性。结果为负则为凹顶点,为正则为凸顶点。凹顶点用o表示,凸顶点用*表示。结果如下:matlab代码如下:clear all;close all;clc;n=2... 阅读全文
posted @ 2014-10-05 00:06 Dsp Tian 阅读(10389) 评论(4) 推荐(2)
摘要: 简单多边形是指各边不相交的多边形。首先计算出所有顶点中心位置。然后求每个顶点与中心的极角。再对极角进行排序。连接排序后的点就行了。结果如下:matlab代码如下:clear all;close all;clc;n=30;p=rand(n,2);cen=mean(p);ang=atan2(p(:,1)... 阅读全文
posted @ 2014-10-04 21:04 Dsp Tian 阅读(3584) 评论(0) 推荐(0)
摘要: 变换使用的模板必须是单连通的,而且模板中心必须在模板内,如果在模板中打个结或是月牙形,这里的程序就处理不了了。虽然非单连通模板也有办法处理,不过不是这里要讨论的。这里用到的方法和矩形变换为圆那片文章中用的方法几乎一样,变换前后像素按比例缩减,不过在判断弧度和图像边界到模板中心距离时略有不同。变换为圆... 阅读全文
posted @ 2014-10-02 23:02 Dsp Tian 阅读(2281) 评论(0) 推荐(0)
摘要: 十一没什么事干,接着看图像算法。这个球面化算法最初是在ps上的球面化滤镜中看到的,感觉挺有意思,就研究了一下。算法的详细推导可以在这篇博客中找到,我比较懒,只在纸上推了一遍,就不在博客上编辑了。不过这里还是要把逆变换公式写一下。公式如下:其中R为球的半径,x,y为目标图像像素坐标,xx,yy为源图像... 阅读全文
posted @ 2014-10-01 20:11 Dsp Tian 阅读(5190) 评论(0) 推荐(1)
摘要: 三角形两角的角平分线就能确定内切圆。结果如下:matlab代码如下:clear all;close all;clc;p=rand(3,2); %(x,y)v12=(p(2,:)-p(1,:))/norm(p(2,:)-p(1,:)); %一个顶点两边的归一化向量v13=(p(3,:)-p... 阅读全文
posted @ 2014-09-27 11:30 Dsp Tian 阅读(3435) 评论(0) 推荐(0)
摘要: 三角形两边的垂直平分线就能确定外接圆。结果如下:matlab代码如下:clear all;close all;clc;p=rand(3,2); %(x,y)cen1=(p(1,:)+p(2,:))/2; %三角形一条边中点cen2=(p(2,:)+p(3,:))/2; ... 阅读全文
posted @ 2014-09-27 00:33 Dsp Tian 阅读(3941) 评论(0) 推荐(0)
摘要: 很简单的算法,这里是把每对线段都进行比较了。还有一种似乎先通过x和y排序再进行交点判断的,不过那种方法我还没看太明白。这里的方法如下:1.根据线段的端点求两条直线的交点。2.判断直线的交点是否在两条线段上。结果如下:matlab代码如下:clear all;close all;clc;n=20;p=... 阅读全文
posted @ 2014-09-26 22:50 Dsp Tian 阅读(9529) 评论(0) 推荐(1)
上一页 1 ··· 41 42 43 44 45 46 47 48 49 ··· 79 下一页