91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

使用C++實現莫拉維克算子特征點提取的算法。算法效率高。便于調用。

資源截圖

代碼片段和文件信息

#include?“stdafx.h“
#include?“Moravec.h“
#include???
#include???

CMoravec::CMoravec()
{
kSize?=?5;
threshold?=?20000;
}


CMoravec::~CMoravec()
{
}

//***********moravec角點檢測函數*******************??
void?CMoravec::Moravec(Mat?srcImage?Mat?srcImgColor){

//角點檢測的結果圖??
resMorMat?=?srcImage.clone();
//存儲興趣點位置
Interest?=?Mat::ones(srcImage.rows?srcImage.cols?CV_8U);
int?r?=?kSize?/?2;
//獲取圖像的高和寬??
const?int?nRows?=?srcImage.rows;
const?int?nCols?=?srcImage.cols;

int?nCount?=?0;
//保存角點的坐標??
CvPoint?*pPoint?=?new?CvPoint[nRows*nCols];
//遍歷圖像??
for?(int?i?=?r;?i? {
for?(int?j?=?r;?j? {
int?wV1?wV2?wV3?wV4;
wV1?=?wV2?=?wV3?=?wV4?=?0;
//計算水平方向窗內的興趣值??
for?(int?k?=?-r;?k?<=?r;?k++)
{
for?(int?m?=?-r;?m?<=?r;?m++)
{
//判斷移動的過程中是否越界,越界的話就跳過當前的循環,以免出錯??
int?a?=?i?+?k;
int?b?=?j?+?m?+?1;
if?(b?>=?srcImage.cols)
{
continue;
}
wV1?+=?(srcImage.at(i?+?k?j?+?m?+?1)?-?srcImage.at(i?+?k?j?+?m))
*(srcImage.at(i?+?k?j?+?m?+?1)?-?srcImage.at(i?+?k?j?+?m));
}
}

//計算垂直方向窗內的興趣值??
for?(int?k?=?-r;?k?<=?r;?k++)
{
for?(int?m?=?-r;?m?<=?r;?m++)
{
int?a?=?i?+?k?+?1;
int?b?=?j?+?m;
if?(a?>=?srcImage.rows)
{
continue;
}
wV2?+=?(srcImage.at(i?+?k?+?1?j?+?m)?-?srcImage.at(i?+?k?j?+?m))
*(srcImage.at(i?+?k?+?1?j?+?m)?-?srcImage.at(i?+?k?j?+?m));
}
}

//計算45°方向窗內的興趣值??
for?(int?k?=?-r;?k?<=?r;?k++)
{
for?(int?m?=?-r;?m?<=?r;?m++)
{
int?a?=?i?+?k?+?1;
int?b?=?j?+?m?+?1;
if?(a?>=?srcImage.rows?||?b?>=?srcImage.cols)
{
continue;
}
wV3?+=?(srcImage.at(i?+?k?+?1?j?+?m?+?1)?-?srcImage.at(i?+?k?j?+?m))
*(srcImage.at(i?+?k?+?1?j?+?m?+?1)?-?srcImage.at(i?+?k?j?+?m));
}
}

//計算135°方向窗內的興趣值??
for?(int?k?=?-r;?k?<=?r;?k++)
{
for?(int?m?=?-r;?m?<=?r;?m++)
{
int?a?=?i?+?k?+?1;
int?b?=?j?+?m?-?1;
if?(a?>=?srcImage.rows?||?b? {
continue;
}
wV4?+=?(srcImage.at(a?b)?-?srcImage.at(i?+?k?j?+?m))
*(srcImage.at(a?b)?-?srcImage.at(i?+?k?j?+?m));
}
}
int??value?=?min(min(wV1?wV2)?min(wV3?wV4));
//如果興趣值大于閾值,那么將坐標存入數組中??
if?(value?>?threshold)
{
pPoint[nCount]?=?cvPoint(j?i);
nCount++;
Interest.at(i?j)?=?0;
}
}
}
FeatureNum?=?nCount;
for?(int?i?=?0;?i? {
circle(resMorMat?pPoint[i]?5?Scalar(255?0?0)180);
}
}

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件???????2945??2017-12-30?01:02??莫拉維克角點檢測\Moravec.cpp

?????文件????????459??2017-12-30?00:04??莫拉維克角點檢測\Moravec.h

?????目錄??????????0??2018-12-02?14:56??莫拉維克角點檢測

-----------?---------??----------?-----??----

?????????????????3404????????????????????3


評論

共有 條評論