编译图像质量分析库iqa
介绍
iqa库是我在GitHub上偶然发现的一个具有MSE, PSNR, SSIM, MS-SSIM等图像质量分析算法的库,觉得还不错,就把它下载下来编译,编译后生成静态的库。以下是我总结的编译方法。不过,这个库是没有牵涉到OpenCV的,所以具体读取图像的方法还有待研究(好像是直接读取数组),以后会写一篇文章讲解一下怎么使用这个库。
下载源文件
首先从GitHub上下载源码Image Quality Analysis Library

点击“Clone & Download”,“Download ZIP”,下载到本地
解压和编译
github上给出的编译方法如下:
BUILD:
All build artifacts end up in build/, where is
'debug' or 'release'.Windows:
- Open iqa.sln, select 'Debug' or 'Release', and build. The output is a
static library 'iqa.lib'.- To run the tests under the debugger, first right-click the 'test' project,
select Properties -> Configuration Properties -> Debugging and set
'Working Directory' to '$(OutDir)'. Then start the application.

解压zip文件到指定的文件夹,点击生成的文件夹下的“.sin”文件,打开

会提示你要单向升级,点击“确定”。此时会弹出网页版的迁移报告,忽略即可

打开解决方案之后,右键点击“解决方案资源管理器”的“iqa”,选择“重定向解决方案目标”,然后点击“确定”

然后右键点击“解决方案资源管理器”-->“生成”,即可生成debug的lib(如果修改解决方案配置为“Release x64”可以生成release的lib)。lib存放在解决方案目录的build\debug文件夹下

测试
右键点击“解决方案资源管理器”的“test”,选择“重定向解决方案目标”,然后点击“确定”
右键点击工具栏项目属性>调试>工作目录,将其中的内容修改为“$(OutDir)”(如果直接点击“解决方案资源管理器”的项目test,记得在弹出的窗口中确定是不是当前的配置方案,比如Debug x64)

如果直接点击生成的话,编译器会报错

解决报错的方法是:选中工具栏的项目,右键选择属性>配置属性>生成事件>生成后事件,选择“否”

以上修改都完成之后,点击“开始执行(不调试)”,即可测试库
(如果出现FAILED,则说明没有将图片放到指定位置,可将resources文件夹下的图片拷贝到iqa-master\build\debug(/release)下)

编译图像质量分析库iqa的更多相关文章
- jrtplib源码分析 第一篇 jthread的编译与分析
第一篇 jthread的编译与分析 jrtplib代码依赖库jthread,因此先从jthread开始jrtplib的学习.首先从以下链接下载jthread的源代码http://research.ed ...
- 烂泥:centos单独编译安装gd库
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天一直在弄一个商城系统,该系统的源码及数据库都已经上传并创建完毕.但是在安装该系统时,却提示缺少gd库.如下: 使用php探针查看,发现php确实没 ...
- linux下编译安装boost库
linux下编译安装boost库 linux下编译安装boost库 1.下载并解压boost 1.58 源代码 下载 解压 2.运行bootstrap.sh 3.使用b2进行构建 构建成功的提示 4. ...
- Linux下编译安装PCRE库
备注:如果没有root权限,使用 --prefix 指定安装路径 ./configure --prefix=/home/work/tools/pcre-8.xx =================== ...
- 【转】编译quickfast解析库(沪深level2行情转码库)
转自http://blog.csdn.net/hacode/article/details/7065889 编译quickfast解析库(沪深level2行情转码库) 目录(?)[-] 1 下载源代 ...
- App开发流程之数据持久化和编译静态链接库
先记录数据持久化. iOS客户端提供的常用数据持久化方案:NSUserDefaults代表的用户设置,NSKeydArchiver代表的归档,plist文件存储,SQLite数据库(包括上层使用的Co ...
- [ZZ] 在windows上编译Mesa3d opengl32库
在windows上编译Mesa3d opengl32库 cheungmine http://blog.csdn.net/ubuntu64fan/article/details/8061475 Mesa ...
- Linux下编译使用boost库:
Boost是什么不多说, 下面说说怎样在Linux下编译使用Boost的所有模块. 1. 先去Boost官网下载最新的Boost版本, 我下载的是boost_1_56_0版本, 解压. 2. 进入解压 ...
- windows android studio 编译Jni动态库
项目需要,折腾了半天搞定windows android studio环境编译Jni动态库,现记录下来. 准备安装环境: 1. android studio 下载地址是http://www.androi ...
随机推荐
- 保持在Div 底部的方法
<!DOCTYPE> <html> <head> <meta http-equiv="content-type" content=&quo ...
- scala的隐式转换
摘要: 通过隐式转换,程序员可以在编写Scala程序时故意漏掉一些信息,让编译器去尝试在编译期间自动推导出这些信息来,这种特性可以极大的减少代码量,忽略那些冗长,过于细节的代码. 使用方式: 1. ...
- RenderPage()加载局部页和传递数据
System.Web.WebPages.WebPageBase类的方法public override HelperResult RenderPage(string path, params objec ...
- HDU 6162 Ch’s gift (线段树+树链剖分)
题意:给定上一棵树,每个树的结点有一个权值,有 m 个询问,每次询问 s, t , a, b,问你从 s 到 t 这条路上,权值在 a 和 b 之间的和.(闭区间). 析:很明显的树链剖分,但是要用 ...
- Linux下oracle定时备份
1. 设置数据库空表可导出(oracel11g) 用PL/SQL登录数据库(或者其他工具) 执行: select 'alter table '||table_name||' allocate exte ...
- Java 栈与堆简介
一.前言 长久以来,一直被Java的内存分配问题,堆和栈问题困扰好久,面试的时候也非常心虚,这几天好好通过看书和技术博客来整理了一下,希望能找到我自己的理解方式. 二.内存 内存分物理内存和虚拟内存, ...
- 编写高质量代码改善C#程序的157个建议——建议92:谨慎将数组或集合作为属性
建议92:谨慎将数组或集合作为属性 数组或集合作为属性会引起这样一个问题:如果属性是只读的,我们通常会认为它是不可用改变的,但如果将只读属性应用于数座或集合,而元素的内容和数量却仍旧可以随意改变.如下 ...
- 用阿里巴巴官方给Jmeter开发的Dubbo sampler取样器进行dubbo接口测试【图解剖析】
自:https://blog.csdn.net/cyjs1988/article/details/84258046 [一]Dubbo sampler下载地址: 该插件支持jmeter 3.2及3.2以 ...
- MAX6675操作源码--K型热电偶模数转换器
#define P_TENB PF4_OUT #define P_TSLK PA3_OUT #define P_TDAT PB2_IN //****************************** ...
- Mac上修改MySQL默认字符集为utf8
1.检查默认安装的mysql的字符集 mysql> show variables like '%char%'; +--------------------------+------------- ...