Skip to content

Latest commit

 

History

History
83 lines (59 loc) · 1.75 KB

README.md

File metadata and controls

83 lines (59 loc) · 1.75 KB

SRCNNKit

Implementation of Super Resolution (SR) with CoreML and Swift. You can use SR method in your app using SRCNNKit UIImageView extension.

For details, see the following presentaion:

https://speakerdeck.com/kenmaz/super-resolution-with-coreml-at-try-swift-tokyo-2018

Pre trained model

Sorry, this project dosen't contain *.mlmodel yet. You should train your own model and import SRCNN.mlmodel to your project.

iOS

Usage

import SRCNNKit

let imageView: UIImageView = ...
let image: UIImage = ...

imageView.setSRImage(image)

Install

  • Copy sources to your project.
  • CocoaPods and Carthage will be supported soon.

Requirements

  • iOS11
  • Xcode9.x

Run sample project

  • Copy your SRCNN.mlmodel to model directory
  • Run following command:
git submodule init
git submodule update
  • Open SRCNN-ios/SRCNN-ios.xcodeproj and Run

Train Your own model

Requirements

  • Python 3.0+
  • see script/packages.txt

Convert Training Data

cd script
python3 convert.py <original train image dir> <train data dir>
python3 convert.py <original validation image dir> <validation data dir>

Training

python3 train.py <tf log dir> <model output dir> <train data dir> <validation data dir>

Plot Model Image

python plot.py <.h5 model path> <output dir>

Convert Keras to CoreML Model

python3 coreml_convert.py <h5 mode path> <output dir>

Validate CoreML Model

python3 coreml_predict.py <mlmodel path> <input patch image path> <output patch image path>

Dependencies

https://github.com/hollance/CoreMLHelpers

Licence

SRCNNKit is released under the MIT license. See LICENSE for details.

Copyright © 2018 DeNA Co., Ltd. All rights reserved.