有两幅大小相同的黑白图像(用0-1矩阵)表示,求这两幅图像的相似度。如果两幅图像在相同的位置上像素相同,则该位置具有相同的像素点。相似度就是相同像素点占总像素点数的百分比。
工具/原料
C++
方法/步骤
1
输入数据时,第一行输入两个整数,表示图像的行列数,接着输入两个m行n列矩阵,表示两幅图像。
2
首先,定义一个常量,用来控制表示图像的矩阵。
3
接着,定义各整型变量,实现程序的运行。
4
接着,定义一个实型变量,保存计算的相似度百分比。
5
定义两个整型数组,保存两幅图像的各像素。
6
输入两幅图像的行数和列数,保存在变量m和n中。
7
输入图像1的各像素值,保存在变量p1中。
8
输入另一幅图像的所有像素,保存在变量p2中。
9
用两重for循环实现两幅图像相同像素的判断,并用变量count计数。
10
然后,计算两幅图像的相似度。
11
最后,输出两幅图像的相似度,值为百分比数,精确到小数点后两位。
12
运行程序,输入规定行数和列数的两个矩阵后,计算机就会计算出两幅图像的相似度。
注意事项
作者声明:本篇经验系本人辛勤劳动的原创成果,未经许可,谢绝转载。
上一篇:浅谈数码黑白摄影技巧