您的位置:首页 > 运维架构

opencv 判断两张图片是否一样

2017-05-17 11:18 405 查看
bool cvMatEQ(const cv::Mat& data1, const cv::Mat& data2)
{
bool success = true;
// check if is multi dimensional
if(data1.dims > 2 || data2.dims > 2)
{
if( data1.dims != data2.dims || data1.type() != data2.type() )
{
return false;
}
for(int32t dim = 0; dim < data1.dims; dim++){
if(data1.size[dim] != data2.size[dim]){
return false;
}
}
}
else
{
if(data1.size() != data2.size() || data1.channels() != data2.channels() || data1.type() != data2.type()){
return false;
}
}
int nrOfElements = data1.total()*data1.elemSize1();
//bytewise comparison of data
int cnt = 0;
for(cnt = 0; cnt < nrOfElements && success; cnt++)
{
if(data1.data[cnt] != data2.data[cnt]){
success = false;
}
}
return success;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: