我正在开发一个关于图像处理的项目,我正在研究与模板匹配有关的子系统,我正在实现SAD技术(绝对差异的总和)以找到匹配几个图像之间。我已经实现了代码并且工作正常。我的问题是关于我正在使用的minSAD值。它被预定义为100000的值。我理解的方式是,minSAD越低,我们发现的匹配就越准确。我只是需要在搜索时找到更多关于它的内容,似乎没有任何东西能够详细描述它。只需要这个解释就可以更好地理解它,所以任何帮助都会受到赞赏。
minSAD = VALUE_MAX;
// loop through the search image
for ( int x = 0; x <= S_rows - T_rows; x++ ) {
for ( int y = 0; y <= S_cols - T_cols; y++ ) {
SAD = 0.0;
// loop through the template image
for ( int j = 0; j < T_cols; j++ )
for ( int i = 0; i < T_rows; i++ ) {
pixel p_SearchIMG = S[x+i][y+j];
pixel p_TemplateIMG = T[i][j];
SAD += abs( p_SearchIMG.Grey - p_TemplateIMG.Grey );
}
// save the best found position
if ( minSAD > SAD ) {
minSAD = SAD;
// give me min SAD
position.bestRow = x;
position.bestCol = y;
position.bestSAD = SAD;
}
}
}