This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Uncomment the next line to define a global platform for your project | |
platform :ios, '11.0' | |
target 'MyStylingApp' do | |
# Uncomment the next line if you're using Swift or would like to use dynamic frameworks | |
# use_frameworks! | |
# Linking React Native for Pods Projects | |
rn_path = '../node_modules/react-native' | |
pod 'yoga', path: "#{rn_path}/ReactCommon/yoga/yoga.podspec" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import ImagePicker from 'react-native-image-picker'; | |
/* More info on all the options | |
* | |
* https://github.com/react-native-community/react-native-image-picker/blob/master/docs/Reference.md#options | |
* | |
*/ | |
const options = { | |
title: 'Select Image for styling', | |
storageOptions: { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import _ from 'lodash'; | |
import { imagenetClasses } from '../data/imagenet'; | |
/** | |
* Find top k imagenet classes | |
*/ | |
export function imagenetClassesTopK(classProbabilities: any, k = 5) { | |
const probs = _.isTypedArray(classProbabilities) ? | |
Array.prototype.slice.call(classProbabilities) : classProbabilities; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export async function runModel(model: InferenceSession, preProcessedData: Tensor): Promise<[Tensor, number]> { | |
const start = new Date(); | |
try { | |
const outputData = await model.run([preProcessedData]); | |
const end = new Date(); | |
const inferenceTime = (end.getTime() - start.getTime()); | |
const output = outputData.values().next().value; | |
return [output, inferenceTime]; | |
} catch (e) { | |
console.error(e); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import loadImage from 'blueimp-load-image'; | |
const imageLoaderConfigs = { | |
maxWidth: 224, | |
maxHeight: 224, | |
cover: true, | |
crop: true, | |
canvas: true, | |
crossOrigin: 'Anonymous', | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import ndarray from 'ndarray'; | |
import ops from 'ndarray-ops'; | |
import { Tensor } from 'onnxjs'; | |
export function preProcess(ctx: CanvasRenderingContext2D): Tensor { | |
const imageData = ctx.getImageData(0, 0, ctx.canvas.width, ctx.canvas.height); | |
const { data, width, height } = imageData; | |
const dataTensor = ndarray(new Float32Array(data), [width, height, 4]); | |
const dataProcessedTensor = ndarray(new Float32Array(width * height * 3), [1, 3, width, height]); | |
ops.assign(dataProcessedTensor.pick(0, 0, null, null), dataTensor.pick(null, null, 2)); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* processImage | |
* | |
* Responsible for getting image from react native camera and | |
* starting image processing. | |
* | |
* @param {string} uri Path for the image to be processed | |
* @param {object} imageProperties Other properties of image to be processed | |
* @memberof App | |
* @author Zain Sajjad |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package fetchsky.androidsample; | |
import android.annotation.TargetApi; | |
import android.content.Intent; | |
import android.net.Uri; | |
import android.os.Build; | |
import android.support.v7.app.AppCompatActivity; | |
import android.os.Bundle; | |
import android.util.Log; | |
import android.webkit.WebResourceRequest; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import UIKit | |
class ViewController: UIViewController, UIWebViewDelegate { | |
@IBOutlet weak var webView: UIWebView! | |
override func viewDidLoad() { | |
super.viewDidLoad(); | |
NewerOlder