Почему классификация цветочных изображений на веб-сайте Tensorflow занимает около 6 секунд для классификации?

С небольшими изменениями в вашем коде вы можете достичь этого более общим способом.

 final Handler responseHandler = new Handler(Looper.getMainLooper()){
            @Override
            public void handleMessage(Message msg) {
                //txtView.setText((String) msg.obj);
                Toast.makeText(MainActivity.this,
                        "Result from UIHandlerThread:"+(int)msg.obj,
                        Toast.LENGTH_LONG)
                        .show();
            }
        };

        HandlerThread handlerThread = new HandlerThread("UIHandlerThread"){
            public void run(){
                Integer a = 2;
                Message msg = new Message();
                msg.obj = a;
                responseHandler.sendMessage(msg);
                System.out.println(a);
            }
        };
        handlerThread.start();

Решение:

  1. Создать Handler в потоке пользовательского интерфейса , который называется responseHandler
  2. Инициализируйте этот Handler из Looper раздела UI Thread.
  3. В HandlerThread сообщение post на этом responseHandler
  4. handleMessgae показывает Toast со значением, полученным от сообщения. Этот объект сообщения является общим и вы можете отправлять разные типы атрибутов.

При таком подходе вы можете отправить несколько значений в поток пользовательского интерфейса в разное время. Вы можете запустить (отправить) много Runnable объектов на этом HandlerThread, и каждый Runnable может установить значение в объекте Message, которое может быть получено в потоке пользовательского интерфейса.

0
задан PCG 18 January 2019 в 06:16
поделиться

1 ответ

Время выполнения label_image.py также включает загрузку модели классификации, ее десериализацию и загрузку вашего изображения. В производственной среде вам нужна система очередей сообщений, из которой ваш сценарий классификации будет читать и записывать. Вы можете создать его с помощью Redis. Этот конвейер уменьшит накладные расходы ввода-вывода, и у вас будет разумное время классификации. Вы можете увидеть пример здесь

0
ответ дан monatis 18 January 2019 в 06:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: