博客
关于我
TFLite: interprenter run
阅读量:752 次
发布时间:2019-03-23

本文共 1560 字,大约阅读时间需要 5 分钟。

私 void classifyFrame() {// 获取BitmapBitmap bitmap = textureView.getBitmap(classifier.getImageSizeX(), classifier.getImageSizeY());// 感兴趣的文本String textToShow = classifier.classifyFrame(bitmap);}

// 输入数据的保存空间ByteBuffer=imgData=ByteBuffer.allocateDirect(DIM_BATCH_SIZE//1* getImageSizeX()* getImageSizeY()* DIM_PIXEL_SIZE//3* getNumBytesPerChannel());

// 将Bitmap转换为ByteBufferprivate void convertBitmapToByteBuffer(Bitmap bitmap) {imgData.rewind();bitmap.getPixels(intValues, 0, bitmap.getWidth(), 0, 0, bitmap.getWidth(), bitmap.getHeight());

long startTime = SystemClock.uptimeMillis();pixel=0;for (int i=0; i

}

protected void addPixelValue(int pixelValue) {imgData.put((byte)((pixelValue >> 16) & 0xFF));imgData.put((byte)((pixelValue >> 8) & 0xFF));imgData.put((byte)(pixelValue & 0xFF));}

// TensorFlow Lite引擎protected Interpreter tflite;// 输入结果存储空间private ByteBuffer imgData;

// 模型加载与预处理tflite= new Interpreter(loadModelFile(activity));imgData=ByteBuffer.allocateDirect(DIM_BATCH_SIZE//1* getImageSizeX()* getImageSizeY()* DIM_PIXEL_SIZE//3* getNumBytesPerChannel());

// 模型运行public void run(Object input) {Object[] inputs = {input};Map<Integer, Object> outputs = new HashMap<>();outputs.put(0, output);runForMultipleInputsOutputs(inputs, outputs);}

public void runForMultipleInputsOutputs(Object[] inputs, Map<Integer, Object> outputs) {Tensor[] tensors = wrapper.run(inputs);for (Integer idx : outputs.keySet()) {tensors[idx].copyTo(outputs.get(idx));}}

// 定义模型输入维度private static native int[] getInputDims(long interpreterHandle, int inputIdx, int numBytes);

转载地址:http://icuzk.baihongyu.com/

你可能感兴趣的文章
Netty工作笔记0080---编解码器和处理器链梳理
查看>>
Netty工作笔记0081---编解码器和处理器链梳理
查看>>
Netty工作笔记0082---TCP粘包拆包实例演示
查看>>
Netty工作笔记0083---通过自定义协议解决粘包拆包问题1
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>
Netty应用实例
查看>>
netty底层——nio知识点 ByteBuffer+Channel+Selector
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty心跳检测
查看>>
Netty心跳检测机制
查看>>
netty既做服务端又做客户端_网易新闻客户端广告怎么做
查看>>
netty时间轮
查看>>
Netty服务端option配置SO_REUSEADDR
查看>>
Netty核心模块组件
查看>>
Netty框架内的宝藏:ByteBuf
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>
Netty源码—1.服务端启动流程一
查看>>