角点检测算子的代码描述
来源:互联网 发布:ubuntu 查看安装路径 编辑:程序博客网 时间:2024/06/02 21:32
最简单的一种角点检测算子,但是由于采用了非最大化抑制,效果和OpenCV相当。
TPointInfo = record
Info: TPoint;
w: extended;
Color: TLabColor;
end;
TSinglePointInfoArray = array of TPointInfo;
procedure CornerDetect(Width, Height: longint);
var
i, j, fi, fj, sum: longint;
begin
PointCount := 0;
for i := 7 to Width - 8 do
for j := 7 to Height - 8 do begin
sum := 0;
for fi := i - 7 to i + 7 do
for fj := j - 7 to j + 7 do
sum := sum + abs(ImageGray[i, j] - ImageGray[fi, fj]);
ImagePoint[i, j] := sum div $100;
end;
{标准角点检测算子部分}
for i := 7 to Width - 8 do
for j := 7 to Height - 8 do begin
sum := ImagePoint[i, j];
if sum > $20 then begin
WBPoint[i, j] := true;
Inc(PointCount);
for fi := i - 7 to i + 7 do begin
for fj := j - 7 to j + 7 do
if ImagePoint[fi, fj] > sum then begin
WBPoint[i, j] := false;
Dec(PointCount);
break;
end;
if not WBPoint[i, j] then break;
end;
end else
WBPoint[i, j] := false;
end;
{用非最大化抑制来抑制假角点}
setlength(CornerPoint, PointCount); fi := 0;
for i := 7 to Width - 8 do
for j := 7 to Height - 8 do
if WBPoint[i, j] then begin
CornerPoint[fi].Info.X := i;
CornerPoint[fi].Info.Y := j;
Inc(fi);
end;
{输出为一个点序列}
end;
输入的ImageGray为图像的灰度描述,WBPoint为Boolean数组,ImagePoint为标准角点检测算子运行后的检测值。
- 角点检测算子的代码描述
- 强角点检测算子的Pascal实现代码
- Harris角点检测算子
- Moravec角点检测算子
- Harris角点检测算子
- Harris角点检测算子
- Moravec + Forstner 角点检测算子
- Moravec角点检测算子和Harris角点检测算子
- 角点检测算子(Harris, KLT, SIFT)
- forstner算子和Moravec角点检测算子
- 角点检测算子(Harris, KLT, SIFT,SUSAN)
- 图像局部特征点检测算子综述
- ICCV 2013的人脸特征点检评测及代码
- ICCV 2013的人脸特征点检评测及代码
- ICCV 2013的人脸特征点检评测及代码
- 我的命运测算
- 银行测算系统C代码
- Haar特征描述子及其代码实现
- 今天感觉不错
- J2EE架构的6个最佳实践
- 一个C#的冒泡排序算法
- Struts中Tiles标签简介
- Take a look at my house
- 角点检测算子的代码描述
- SUN服务器及Solaris Serial Console常见设置问题
- books
- 一个应用Dom4j的例子
- 一个假程序员的心里话
- WebLogic Install, Config & start Issues
- 利用PIL合成图像为下一步做准备
- Microsoft SQL Server 2000 Driver for JDBC SP1与连接SQL Server实例的问题
- 外接输入系统-类似一个通用的外挂