Convert to using a grayscale model for micro vision demo
PiperOrigin-RevId: 260618989
This commit is contained in:
parent
3550e664fa
commit
e327064034
@ -1,8 +1,8 @@
|
||||
$(eval $(call add_third_party_download,$(PERSON_MODEL_URL),$(PERSON_MODEL_MD5),person_model,))
|
||||
$(eval $(call add_third_party_download,$(PERSON_MODEL_URL),$(PERSON_MODEL_MD5),person_model_grayscale,))
|
||||
|
||||
MICRO_VISION_MODEL_SRCS := \
|
||||
tensorflow/lite/experimental/micro/examples/micro_vision/model_settings.cc \
|
||||
$(MAKEFILE_DIR)/downloads/person_model/person_detect_model_data.cc
|
||||
$(MAKEFILE_DIR)/downloads/person_model_grayscale/person_detect_model_data.cc
|
||||
|
||||
MICRO_VISION_MODEL_HDRS := \
|
||||
tensorflow/lite/experimental/micro/examples/micro_vision/model_settings.h \
|
||||
@ -10,8 +10,8 @@ tensorflow/lite/experimental/micro/examples/micro_vision/person_detect_model_dat
|
||||
|
||||
MICRO_VISION_TEST_SRCS := \
|
||||
tensorflow/lite/experimental/micro/examples/micro_vision/micro_vision_test.cc \
|
||||
$(MAKEFILE_DIR)/downloads/person_model/no_person_image_data.cc \
|
||||
$(MAKEFILE_DIR)/downloads/person_model/person_image_data.cc \
|
||||
$(MAKEFILE_DIR)/downloads/person_model_grayscale/no_person_image_data.cc \
|
||||
$(MAKEFILE_DIR)/downloads/person_model_grayscale/person_image_data.cc \
|
||||
$(MICRO_VISION_MODEL_SRCS)
|
||||
|
||||
MICRO_VISION_TEST_HDRS := \
|
||||
|
@ -69,10 +69,9 @@ TF_LITE_MICRO_TEST(TestInvoke) {
|
||||
TF_LITE_MICRO_EXPECT_NE(nullptr, input);
|
||||
TF_LITE_MICRO_EXPECT_EQ(4, input->dims->size);
|
||||
TF_LITE_MICRO_EXPECT_EQ(1, input->dims->data[0]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(96, input->dims->data[1]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(96, input->dims->data[2]);
|
||||
// TODO(rocky): This will be a single channel for monochrome inputs
|
||||
TF_LITE_MICRO_EXPECT_EQ(3, input->dims->data[3]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kNumRows, input->dims->data[1]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kNumCols, input->dims->data[2]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kNumChannels, input->dims->data[3]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kTfLiteUInt8, input->type);
|
||||
|
||||
// Copy an image with a person into the memory area used for the input.
|
||||
@ -95,7 +94,7 @@ TF_LITE_MICRO_TEST(TestInvoke) {
|
||||
TF_LITE_MICRO_EXPECT_EQ(1, output->dims->data[0]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(1, output->dims->data[1]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(1, output->dims->data[2]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(3, output->dims->data[3]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kCategoryCount, output->dims->data[3]);
|
||||
TF_LITE_MICRO_EXPECT_EQ(kTfLiteUInt8, output->type);
|
||||
|
||||
// Make sure that the expected "Person" score is higher than the other class.
|
||||
|
@ -23,7 +23,7 @@ limitations under the License.
|
||||
// if you change your model you'll need to update these constants.
|
||||
constexpr int kNumCols = 96;
|
||||
constexpr int kNumRows = 96;
|
||||
constexpr int kNumChannels = 3;
|
||||
constexpr int kNumChannels = 1;
|
||||
|
||||
constexpr int kMaxImageSize = kNumCols * kNumRows * kNumChannels;
|
||||
|
||||
|
@ -46,5 +46,5 @@ SIFIVE_FE310_LIB_MD5 := "06ee24c4956f8e21670ab3395861fe64"
|
||||
KISSFFT_URL="https://github.com/mborgerding/kissfft/archive/v130.zip"
|
||||
KISSFFT_MD5="438ba1fef5783cc5f5f201395cc477ca"
|
||||
|
||||
PERSON_MODEL_URL := "https://storage.googleapis.com/download.tensorflow.org/data/tf_lite_micro_person_data.tgz"
|
||||
PERSON_MODEL_MD5 := "dc0ffad71adb651fb7b2d472b6c901ef"
|
||||
PERSON_MODEL_URL := "https://storage.googleapis.com/download.tensorflow.org/data/tf_lite_micro_person_data_grayscale.zip"
|
||||
PERSON_MODEL_MD5 := "cd1059dd1c94afadd59608202732ad63"
|
||||
|
Loading…
x
Reference in New Issue
Block a user