背景
做为一名崇宁泉迷,在欣赏通宝重宝的精美铸造的同时,渐渐地对浩瀚复杂的对版工作力不从心,时常在想,科技进步日新月异,是不是能有个自动化的对版工具,使用拍照->图像处理->对版自动化操作一气呵成,就能把版别计算出来,省了不少麻烦也提升了准确率,刚好咱也是个码农,有了这个想法后,心里蠢蠢欲动,查了查资料,说干就干。
工具
opencv(图像处理工具),python(编程语言),北宋铜钱一本,铜钱若干。
过程
首先祭出刚买的一枚木崇离宝,拍照,裁剪,最初长这样。

写了点代码进行了一些图像处理,提取灰度图,进行了高斯滤波(剔除了一些杂散噪声的影响),然后提取轮廓,经过一通操作,此时长这样。

然后掏出我的北宋铜钱,对着木崇一通拍照,裁剪,做同样的操作。


最后呢,就是最重要的一步,用什么方法判定两张图片的相似度呢?翻了翻上学时候的课本,好吧,用sift算法,即尺度不变特征变换,简单说就是一张图片无论如何旋转,有些尺度,距离的相对值是不会变化的,也是图像处理中的经典算法,把两张处理的轮廓图扔进去进行计算,好嘛,算出来震惊了我,相似度只有10.4(满分100)。

总结
复盘了下,古钱币这个东西,受到秀色,状态,以及光照等条件的影响,导致图像采集出来的特征已经失真了,用传统的算法是无法进行精确计算的,看来这块只能使用机器学习了,后续我在研究研究怎么用机器学习的手段优化下算法。路漫漫其修远兮,吾将上下而求索。