# Description: # TensorFlow Lite Example Label Image. load("//tensorflow/lite:build_def.bzl", "tflite_linkopts") package( default_visibility = ["//visibility:public"], licenses = ["notice"], ) exports_files(glob([ "testdata/*.bmp", ])) cc_binary( name = "label_image", srcs = [ "get_top_n.h", "get_top_n_impl.h", "label_image.cc", ], linkopts = tflite_linkopts() + select({ "//tensorflow:android": [ "-pie", # Android 5.0 and later supports only PIE "-lm", # some builtin ops, e.g., tanh, need -lm "-Wl,-rpath=/data/local/tmp", # for hexagon delegate ], "//conditions:default": [], }), deps = [ ":bitmap_helpers", "//tensorflow/lite:framework", "//tensorflow/lite:string_util", "//tensorflow/lite/c:common", "//tensorflow/lite/kernels:builtin_ops", "//tensorflow/lite/profiling:profiler", "//tensorflow/lite/tools:command_line_flags", "//tensorflow/lite/tools:tool_params", "//tensorflow/lite/tools/delegates:delegate_provider_hdr", "//tensorflow/lite/tools/delegates:tflite_execution_providers", "@com_google_absl//absl/memory", "@com_google_absl//absl/strings", ], ) cc_library( name = "bitmap_helpers", srcs = ["bitmap_helpers.cc"], hdrs = [ "bitmap_helpers.h", "bitmap_helpers_impl.h", "label_image.h", "log.h", ], deps = [ "//tensorflow/lite:builtin_op_data", "//tensorflow/lite:framework", "//tensorflow/lite:string", "//tensorflow/lite:string_util", "//tensorflow/lite/kernels:builtin_ops", "//tensorflow/lite/schema:schema_fbs", ] + select({ "//tensorflow:android": [ "//tensorflow/lite/delegates/gpu:delegate", "//tensorflow/lite/delegates/hexagon:hexagon_delegate", ], "//tensorflow:android_arm64": [ "//tensorflow/lite/delegates/gpu:delegate", "//tensorflow/lite/delegates/hexagon:hexagon_delegate", ], "//conditions:default": [], }), ) cc_test( name = "label_image_test", srcs = [ "get_top_n.h", "get_top_n_impl.h", "label_image_test.cc", ], data = [ "testdata/grace_hopper.bmp", ], deps = [ ":bitmap_helpers", "//tensorflow/lite/c:common", "@com_google_googletest//:gtest_main", ], )