Merge pull request from freedomtan:gpu_delegate_already_allows_quant

PiperOrigin-RevId: 327630219
Change-Id: I04153386bcf1a80af7356446ee279d29fb04d342
This commit is contained in:
TensorFlower Gardener 2020-08-20 08:31:04 -07:00
commit e7d27d8507
2 changed files with 47 additions and 47 deletions
tensorflow/lite/java/demo/app/src/main/java/com/example/android/tflitecamerademo

View File

@ -326,8 +326,10 @@ public class Camera2BasicFragment extends Fragment
final int deviceIndex = deviceView.getCheckedItemPosition();
final int numThreads = np.getValue();
backgroundHandler.post(() -> {
if (modelIndex == currentModel && deviceIndex == currentDevice
backgroundHandler.post(
() -> {
if (modelIndex == currentModel
&& deviceIndex == currentDevice
&& numThreads == currentNumThreads) {
return;
}
@ -368,12 +370,7 @@ public class Camera2BasicFragment extends Fragment
classifier.setNumThreads(numThreads);
if (device.equals(cpu)) {
} else if (device.equals(gpu)) {
if (model.equals(mobilenetV1Quant)) {
showToast("gpu requires float model.");
classifier = null;
} else {
classifier.useGpu();
}
} else if (device.equals(nnApi)) {
classifier.useNNAPI();
}

View File

@ -172,7 +172,10 @@ public abstract class ImageClassifier {
public void useGpu() {
if (gpuDelegate == null) {
gpuDelegate = new GpuDelegate();
GpuDelegate.Options options = new GpuDelegate.Options();
options.setQuantizedModelsAllowed(true);
gpuDelegate = new GpuDelegate(options);
tfliteOptions.addDelegate(gpuDelegate);
recreateInterpreter();
}