SDK集成

1.SDK说明

  • IVImageSR Android SDK 用于Android设备上对图像进行超分辨率及画质增强处理

  • 本文基于Android Studio 2.3.1

2.运行环境

  • Android系统要求:需要Android 5.0以上系统版本(API Level 21及以上)

  • 并且需要添加网络访问权限(用于授权和下载模型)

3.SDK引用

  • 在Android Libs中添加IVImageSR.aar,以及您需要的ABI库(可以是1款,也可以是多款)到Libs目录中。

    image.png

  • 同时确保app内部的build.gradle 已经把libs目录添加到android标签中

sourceSets.main.jniLibs.srcDirs = ['./libs']
  • 添加libs目录到android的配置中


repositories
{
  flatDir{
       dirs 'libs'
      }
}
  • 添加libs/IVImageSR.aar到compile files

compile(name: 'IVImageSR', ext: 'aar')
  • 如下图所示

    image.png

4.SDK初始化

  • 首先import这几个您需要使用到的类和接口。

image.png

  • 在IVManager类的initWithDevKey中传入您的ApplicationContext,以及官网开发者页面获取的DevKey。

image.png

  • 进行IVImage类的初始化。您需要在同一个线程完成模型加载和超分(我们建议是一个Executors.newSingleThreadExecutor())。其中在其中传入您获取的model name即可初始化完成,(在同一款app中只能进行一个IVImage类的初始化,初始化多个模型,只有最后一个IVImage有效,当然如果您有需要,可以交叉地采用不同的模型对图片进行超分)。

image.png

image.png

帝视科技目前不提供通用的模型,我们认为不同的场景需要提供最优化的模型,按照我们的优化经验,结果优化的模型效果会远比通用模型好,不过如果您有需要我们也将提供通用的模型给您

5.SDK进行超分

提示:初始化模型接口,以及超分接口必须在一个线程内完成

如果IVImage类与IVManager类您都已经初始化完成了,您将可以对您的图像进行超分辨率重建:

第一步、通过 IVImage 类的improveImage 方法将能够获取到超分结果 。

image.png

我们在Demo中的处理方式如下:

1) 如果out中的返回的是successout.getOutObject()中获取Bitmap

2) 否则打印出错误

image.png