beyond compare 命令行批量比对图片

前言

  beyond compare软件是一款对比功能非常强大的软件,它可以用来比对图片、文本、表格、MP3等等,用起来很方便、直观。最近在使用的时候,因为要批量比对很多的图片,一张一张的图片比对要一个一个打开再比对感觉很麻烦,我就想能不能用脚本批量比对,我只检查批量比对出来的结果就好。还真的找到了,beyond compare支持命令行,这个软件好强大(*^_^*),有没有没有(^ ^)。

1、 命令行安装

mac版安装:

  • 先去官网下载BeyondComPare
  • 安装过BeyondComPare后打开——>BeyondComPare——>安装命令行工具

2、命令行对比

2.1  比较2个文件

查询官网手册,Mac上比对2个文件命令:

bcompare file1 file2

  结果:

  命令会直接打开beyond compare软件,并且打开要比对的2张图片。如下图所示:下图是我用命令行打开的2张图片,比对不一致的地方,默认会用红色显示

2.2 使命令行批量比较文件并生成html格式的差异报告。

比对不同类型的数据,生成报告的脚本不同,具体的可参考官网。生成图片比对报告的脚本如下:

picture-report layout:<layout> [options:<options>] [title:<report title>] output-to:(printer|clipboard|<filename>) [output-options:<options>] [<comparison>]

  参数说明:

    • layout:控制报告的生成,是并行的还是立即
    • options:可选项,每一个layout不一样
    • title:控制显示在报告顶部的标题
    • output-to:控制输出,可以是文件、剪贴板或者打印机
    • output-options:可选的,并且对每个输出目标使用不同的选项

3、批量比对

复制脚本到一个文件,保存文件为MyCompareScript.text

picture-report layout:side-by-side options:display-mismatches output-to:%3 output-options:html-color %1 %2

python 中调用命令:

import subprocess
def compare_img(src_pic,target_pic,out_file):
    subprocess.Popen('bcompare -silent "@MyCompareScript" %s %s %s'%(src_pic, target_pic, out_file),shell=True)

4、参考资料

官网文档:http://www.scootersoftware.com/v4help/

原文地址:https://www.cnblogs.com/yimiaoyikan/p/10234862.html