* [zeus/master] [PATCH 1/3] tensorflow-lite: add header files and change the install location of the example files @ 2020-02-25 23:12 Hongmei Gou 2020-02-25 23:12 ` [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 Hongmei Gou 2020-02-25 23:12 ` [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo Hongmei Gou 0 siblings, 2 replies; 10+ messages in thread From: Hongmei Gou @ 2020-02-25 23:12 UTC (permalink / raw) To: meta-arago; +Cc: Hongmei Gou * The newly added header files are required to build tensorflow lite demos outside of the tensorflow lite release package * Relocate the example files to ${datadir}/${BPN} Signed-off-by: Hongmei Gou <a0271529@ti.com> --- .../tensorflow-lite/tensorflow-lite_1.15.bb | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.15.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.15.bb index b238c85e..5f65055f 100644 --- a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.15.bb +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.15.bb @@ -41,7 +41,7 @@ SRC_URI[mobilenet_v1_quant.sha256sum] = "d32432d28673a936b2d6281ab0600c71cf7226d SRCREV = "590d6eef7e91a6a7392c8ffffb7b58f2e0c8bc6b" -PR = "r3" +PR = "r4" S = "${WORKDIR}/git" @@ -105,6 +105,8 @@ do_install() { install -m 0644 ${S}/tensorflow/lite/*.h ${D}${includedir}/tensorflow/lite/ install -d ${D}${includedir}/tensorflow/lite/c install -m 0644 ${S}/tensorflow/lite/c/*.h ${D}${includedir}/tensorflow/lite/c/ + install -d ${D}${includedir}/tensorflow/lite/core/ + install -m 0644 ${S}/tensorflow/lite/core/*.h ${D}${includedir}/tensorflow/lite/core/ install -d ${D}${includedir}/tensorflow/lite/core/api/ install -m 0644 ${S}/tensorflow/lite/core/api/*.h ${D}${includedir}/tensorflow/lite/core/api/ install -d ${D}${includedir}/tensorflow/lite/kernels @@ -116,27 +118,28 @@ do_install() { install -m 0644 ${S}/tensorflow/lite/schema/schema.fbs ${D}${includedir}/tensorflow/lite/schema/ install -d ${D}${includedir}/tensorflow/lite/tools/ install -m 0644 ${S}/tensorflow/lite/tools/*.h ${D}${includedir}/tensorflow/lite/tools/ + install -d ${D}${includedir}/tensorflow/lite/delegates/nnapi/ + install -m 0644 ${S}/tensorflow/lite/delegates/nnapi/*.h ${D}${includedir}/tensorflow/lite/delegates/nnapi/ + install -d ${D}${includedir}/tensorflow/lite/experimental/resource_variable/ + install -m 0644 ${S}/tensorflow/lite/experimental/resource_variable/*.h ${D}${includedir}/tensorflow/lite/experimental/resource_variable/ + install -d ${D}${includedir}/tensorflow/lite/kernels/internal/ + install -m 0644 ${S}/tensorflow/lite/kernels/internal/*.h ${D}${includedir}/tensorflow/lite/kernels/internal/ + install -d ${D}${libdir}/pkgconfig install -m 0644 ${WORKDIR}/tensorflow-lite.pc.in ${D}${libdir}/pkgconfig/tensorflow-lite.pc sed -i 's:@version@:${PV}:g s:@libdir@:${libdir}:g s:@includedir@:${includedir}:g' ${D}${libdir}/pkgconfig/tensorflow-lite.pc # install examples - install -d ${D}${datadir}/${PN}-${PV}/examples - install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/minimal ${D}${datadir}/${PN}-${PV}/examples - install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/benchmark_model ${D}${datadir}/${PN}-${PV}/examples - install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/label_image ${D}${datadir}/${PN}-${PV}/examples - install -m 0644 ${S}/tensorflow/lite/examples/label_image/testdata/grace_hopper.bmp ${D}${datadir}/${PN}-${PV}/examples - install -m 0644 ${S}/tensorflow/lite/java/ovic/src/testdata/labels.txt ${D}${datadir}/${PN}-${PV}/examples - install -m 0644 ${WORKDIR}/model/mobilenet_v1_1.0_224_quant.tflite ${D}${datadir}/${PN}-${PV}/examples + install -d ${D}${datadir}/${BPN}/examples + install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/minimal ${D}${datadir}/${BPN}/examples + install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/benchmark_model ${D}${datadir}/${BPN}/examples + install -m 0755 ${S}/tensorflow/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/label_image ${D}${datadir}/${BPN}/examples + install -m 0644 ${S}/tensorflow/lite/examples/label_image/testdata/grace_hopper.bmp ${D}${datadir}/${BPN}/examples + install -m 0644 ${S}/tensorflow/lite/java/ovic/src/testdata/labels.txt ${D}${datadir}/${BPN}/examples + install -m 0644 ${WORKDIR}/model/mobilenet_v1_1.0_224_quant.tflite ${D}${datadir}/${BPN}/examples # install scripts for benchmarking - install -m 0755 ${WORKDIR}/tflite-benchmark.sh ${D}${datadir}/${PN}-${PV}/examples + install -m 0755 ${WORKDIR}/tflite-benchmark.sh ${D}${datadir}/${BPN}/examples } -PACKAGES += "${PN}-examples" - -FILES_${PN}-examples = "${datadir}/${PN}-${PV}/examples" - -ALLOW_EMPTY_${PN} = "1" - BBCLASSEXTEND = "native nativesdk" -- 2.17.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-25 23:12 [zeus/master] [PATCH 1/3] tensorflow-lite: add header files and change the install location of the example files Hongmei Gou @ 2020-02-25 23:12 ` Hongmei Gou 2020-02-27 23:14 ` Denys Dmytriyenko 2020-02-25 23:12 ` [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo Hongmei Gou 1 sibling, 1 reply; 10+ messages in thread From: Hongmei Gou @ 2020-02-25 23:12 UTC (permalink / raw) To: meta-arago; +Cc: Hongmei Gou * This supports classification and segmentation demos with tensorflow lite models running on Arm. It demonstrates the whole pipeline from image/video/camera input, to tensorflow lite inference, to display the classification/segemenation results. * OpenCV is used for capturing the input and displaying the results. Signed-off-by: Hongmei Gou <a0271529@ti.com> --- .../files/run_classification.sh | 7 +++ .../tensorflow-lite/files/run_segmentation.sh | 8 +++ .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ 3 files changed, 68 insertions(+) create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh new file mode 100644 index 00000000..b2ad7fc4 --- /dev/null +++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh @@ -0,0 +1,7 @@ +#!/bin/sh + +cd /usr/share/tensorflow-lite/demos + +# Run tflite_classification binary with the model, the input image, and the label file specified. +# Classification label is overlayed with the input image. Right click the image display window to exit. +./tflite_classification -m ../examples/mobilenet_v1_1.0_224_quant.tflite -i ../examples/grace_hopper.bmp -l ../examples/labels.txt diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh new file mode 100644 index 00000000..5caea127 --- /dev/null +++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh @@ -0,0 +1,8 @@ +#!/bin/sh + +cd /usr/share/tensorflow-lite/demos + +# Run tflite_segmentation binary with the model and the input image specified. +# The display window shows the input(resized) image, segmentation map, overlay +# of the former two. Right click the image display window to exit. +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i ./bird_segmentation.bmp diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb new file mode 100644 index 00000000..9b99b63c --- /dev/null +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb @@ -0,0 +1,53 @@ +DESCRIPTION = "Tensorflow Lite Demo with input and display via OpenCV and TIDL acceleration for AM5" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" + +DEPENDS = "tensorflow-lite flatbuffers opencv" + +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" + +PV = "01.00.00" +PR = "r0" + +BRANCH = "master" +SRC_URI = "git://git.ti.com/apps/tensorflow-lite-examples.git;protocol=git;branch=${BRANCH} \ + http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model;destsuffix=model \ + http://raw.githubusercontent.com/google-coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segmentation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ + file://run_classification.sh \ + file://run_segmentation.sh" + +SRC_URI[deeplabv3.md5sum] = "4a24db5a5fb05c47586a1197765e8548" +SRC_URI[deeplabv3.sha256sum] = "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" +SRC_URI[bird_segmentation.md5sum] = "fc3202ac4e3033b36df3043de6dc32c9" +SRC_URI[bird_segmentation.sha256sum] = "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" + +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" + +S = "${WORKDIR}/git" + +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" +LDFLAGS_append = " -L${STAGING_LIBDIR}" + +EXTRA_OEMAKE = "\ + 'CXX=${CXX}' \ + 'CXXFLAGS=${CXXFLAGS}' \ + 'AR=${AR}' \ + 'LD=${LD}' \ + 'LDFLAGS=${LDFLAGS}' \ + 'TARGET=${TARGET_OS}' \ + 'TARGET_ARCH=${TARGET_ARCH}'" + +do_compile() { + oe_runmake -f Makefile +} + +do_install() { + install -d ${D}${datadir}/tensorflow-lite/demos + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow-lite/demos + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow-lite/demos + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite ${D}${datadir}/tensorflow-lite/demos + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp ${D}${datadir}/tensorflow-lite/demos + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow-lite/demos +} + +FILES_${PN} = "${datadir}/tensorflow-lite/demos" -- 2.17.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-25 23:12 ` [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 Hongmei Gou @ 2020-02-27 23:14 ` Denys Dmytriyenko 2020-02-28 17:00 ` Gou, Hongmei 0 siblings, 1 reply; 10+ messages in thread From: Denys Dmytriyenko @ 2020-02-27 23:14 UTC (permalink / raw) To: Hongmei Gou; +Cc: meta-arago On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > * This supports classification and segmentation demos with tensorflow lite models > running on Arm. It demonstrates the whole pipeline from image/video/camera input, > to tensorflow lite inference, to display the classification/segemenation results. > > * OpenCV is used for capturing the input and displaying the results. > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > --- > .../files/run_classification.sh | 7 +++ > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ > 3 files changed, 68 insertions(+) > create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh > create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh > create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb > > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh > new file mode 100644 > index 00000000..b2ad7fc4 > --- /dev/null > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_classification.sh > @@ -0,0 +1,7 @@ > +#!/bin/sh > + > +cd /usr/share/tensorflow-lite/demos > + > +# Run tflite_classification binary with the model, the input image, and the label file specified. > +# Classification label is overlayed with the input image. Right click the image display window to exit. > +./tflite_classification -m ../examples/mobilenet_v1_1.0_224_quant.tflite -i ../examples/grace_hopper.bmp -l ../examples/labels.txt > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh > new file mode 100644 > index 00000000..5caea127 > --- /dev/null > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/run_segmentation.sh > @@ -0,0 +1,8 @@ > +#!/bin/sh > + > +cd /usr/share/tensorflow-lite/demos > + > +# Run tflite_segmentation binary with the model and the input image specified. > +# The display window shows the input(resized) image, segmentation map, overlay > +# of the former two. Right click the image display window to exit. > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i ./bird_segmentation.bmp > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb > new file mode 100644 > index 00000000..9b99b63c > --- /dev/null > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-demo_git.bb > @@ -0,0 +1,53 @@ > +DESCRIPTION = "Tensorflow Lite Demo with input and display via OpenCV and TIDL acceleration for AM5" SUMMARY? > +LICENSE = "Apache-2.0" > +LIC_FILES_CHKSUM = "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > + > +DEPENDS = "tensorflow-lite flatbuffers opencv" > + > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" Why ^^^? > +PV = "01.00.00" > +PR = "r0" > + > +BRANCH = "master" > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite-examples.git;protocol=git;branch=${BRANCH} \ > + http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model;destsuffix=model \ > + http://raw.githubusercontent.com/google-coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segmentation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > + file://run_classification.sh \ > + file://run_segmentation.sh" > + > +SRC_URI[deeplabv3.md5sum] = "4a24db5a5fb05c47586a1197765e8548" > +SRC_URI[deeplabv3.sha256sum] = "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > +SRC_URI[bird_segmentation.md5sum] = "fc3202ac4e3033b36df3043de6dc32c9" > +SRC_URI[bird_segmentation.sha256sum] = "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > + > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > + > +S = "${WORKDIR}/git" > + > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > + > +EXTRA_OEMAKE = "\ > + 'CXX=${CXX}' \ > + 'CXXFLAGS=${CXXFLAGS}' \ > + 'AR=${AR}' \ > + 'LD=${LD}' \ > + 'LDFLAGS=${LDFLAGS}' \ > + 'TARGET=${TARGET_OS}' \ > + 'TARGET_ARCH=${TARGET_ARCH}'" > + > +do_compile() { > + oe_runmake -f Makefile > +} > + > +do_install() { > + install -d ${D}${datadir}/tensorflow-lite/demos > + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow-lite/demos > + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow-lite/demos > + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite ${D}${datadir}/tensorflow-lite/demos > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp ${D}${datadir}/tensorflow-lite/demos > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow-lite/demos > +} > + > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > -- > 2.17.1 > > _______________________________________________ > meta-arago mailing list > meta-arago@arago-project.org > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-27 23:14 ` Denys Dmytriyenko @ 2020-02-28 17:00 ` Gou, Hongmei 2020-02-28 17:12 ` Denys Dmytriyenko 0 siblings, 1 reply; 10+ messages in thread From: Gou, Hongmei @ 2020-02-28 17:00 UTC (permalink / raw) To: Dmytriyenko, Denys; +Cc: meta-arago > -----Original Message----- > From: Dmytriyenko, Denys > Sent: Thursday, February 27, 2020 6:15 PM > To: Gou, Hongmei > Cc: meta-arago@arago-project.org > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite-demo: > add version 01.00.00 > > On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > > * This supports classification and segmentation demos with tensorflow lite > models > > running on Arm. It demonstrates the whole pipeline from > image/video/camera input, > > to tensorflow lite inference, to display the classification/segemenation > results. > > > > * OpenCV is used for capturing the input and displaying the results. > > > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > > --- > > .../files/run_classification.sh | 7 +++ > > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > > .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ > > 3 files changed, 68 insertions(+) > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > lite/files/run_classification.sh > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > lite/files/run_segmentation.sh > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > lite/tensorflow-lite-demo_git.bb > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > lite/files/run_classification.sh b/meta-arago-extras/recipes- > support/tensorflow-lite/files/run_classification.sh > > new file mode 100644 > > index 00000000..b2ad7fc4 > > --- /dev/null > > +++ b/meta-arago-extras/recipes-support/tensorflow- > lite/files/run_classification.sh > > @@ -0,0 +1,7 @@ > > +#!/bin/sh > > + > > +cd /usr/share/tensorflow-lite/demos > > + > > +# Run tflite_classification binary with the model, the input image, and the > label file specified. > > +# Classification label is overlayed with the input image. Right click the > image display window to exit. > > +./tflite_classification -m ../examples/mobilenet_v1_1.0_224_quant.tflite - > i ../examples/grace_hopper.bmp -l ../examples/labels.txt > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > lite/files/run_segmentation.sh b/meta-arago-extras/recipes- > support/tensorflow-lite/files/run_segmentation.sh > > new file mode 100644 > > index 00000000..5caea127 > > --- /dev/null > > +++ b/meta-arago-extras/recipes-support/tensorflow- > lite/files/run_segmentation.sh > > @@ -0,0 +1,8 @@ > > +#!/bin/sh > > + > > +cd /usr/share/tensorflow-lite/demos > > + > > +# Run tflite_segmentation binary with the model and the input image > specified. > > +# The display window shows the input(resized) image, segmentation > map, overlay > > +# of the former two. Right click the image display window to exit. > > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i > ./bird_segmentation.bmp > > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow- > lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow- > lite/tensorflow-lite-demo_git.bb > > new file mode 100644 > > index 00000000..9b99b63c > > --- /dev/null > > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite- > demo_git.bb > > @@ -0,0 +1,53 @@ > > +DESCRIPTION = "Tensorflow Lite Demo with input and display via OpenCV > and TIDL acceleration for AM5" > > SUMMARY? Do you mean adding "SUMMARY" or replacing "DESCRIPTION" with "SUMMARY"? > > > > +LICENSE = "Apache-2.0" > > +LIC_FILES_CHKSUM = > "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > > + > > +DEPENDS = "tensorflow-lite flatbuffers opencv" > > + > > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" > > Why ^^^? This demo has dependency on OpenCV for GUI display, which is available for the machines above. > > > > +PV = "01.00.00" > > +PR = "r0" > > + > > +BRANCH = "master" > > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite- > examples.git;protocol=git;branch=${BRANCH} \ > > + > http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/ > deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model > ;destsuffix=model \ > > + http://raw.githubusercontent.com/google- > coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segm > entation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > > + file://run_classification.sh \ > > + file://run_segmentation.sh" > > + > > +SRC_URI[deeplabv3.md5sum] = "4a24db5a5fb05c47586a1197765e8548" > > +SRC_URI[deeplabv3.sha256sum] = > "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > > +SRC_URI[bird_segmentation.md5sum] = > "fc3202ac4e3033b36df3043de6dc32c9" > > +SRC_URI[bird_segmentation.sha256sum] = > "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > > + > > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > > + > > +S = "${WORKDIR}/git" > > + > > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" > > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > > + > > +EXTRA_OEMAKE = "\ > > + 'CXX=${CXX}' \ > > + 'CXXFLAGS=${CXXFLAGS}' \ > > + 'AR=${AR}' \ > > + 'LD=${LD}' \ > > + 'LDFLAGS=${LDFLAGS}' \ > > + 'TARGET=${TARGET_OS}' \ > > + 'TARGET_ARCH=${TARGET_ARCH}'" > > + > > +do_compile() { > > + oe_runmake -f Makefile > > +} > > + > > +do_install() { > > + install -d ${D}${datadir}/tensorflow-lite/demos > > + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow- > lite/demos > > + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow- > lite/demos > > + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite > ${D}${datadir}/tensorflow-lite/demos > > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp > ${D}${datadir}/tensorflow-lite/demos > > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow- > lite/demos > > +} > > + > > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > > -- > > 2.17.1 > > > > _______________________________________________ > > meta-arago mailing list > > meta-arago@arago-project.org > > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-28 17:00 ` Gou, Hongmei @ 2020-02-28 17:12 ` Denys Dmytriyenko 2020-02-28 17:22 ` Gou, Hongmei 0 siblings, 1 reply; 10+ messages in thread From: Denys Dmytriyenko @ 2020-02-28 17:12 UTC (permalink / raw) To: Gou, Hongmei; +Cc: meta-arago On Fri, Feb 28, 2020 at 12:00:46PM -0500, Gou, Hongmei wrote: > > -----Original Message----- > > From: Dmytriyenko, Denys > > Sent: Thursday, February 27, 2020 6:15 PM > > To: Gou, Hongmei > > Cc: meta-arago@arago-project.org > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite-demo: > > add version 01.00.00 > > > > On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > > > * This supports classification and segmentation demos with tensorflow lite > > models > > > running on Arm. It demonstrates the whole pipeline from > > image/video/camera input, > > > to tensorflow lite inference, to display the classification/segemenation > > results. > > > > > > * OpenCV is used for capturing the input and displaying the results. > > > > > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > > > --- > > > .../files/run_classification.sh | 7 +++ > > > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > > > .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ > > > 3 files changed, 68 insertions(+) > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_classification.sh > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_segmentation.sh > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > lite/tensorflow-lite-demo_git.bb > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_classification.sh b/meta-arago-extras/recipes- > > support/tensorflow-lite/files/run_classification.sh > > > new file mode 100644 > > > index 00000000..b2ad7fc4 > > > --- /dev/null > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_classification.sh > > > @@ -0,0 +1,7 @@ > > > +#!/bin/sh > > > + > > > +cd /usr/share/tensorflow-lite/demos > > > + > > > +# Run tflite_classification binary with the model, the input image, and the > > label file specified. > > > +# Classification label is overlayed with the input image. Right click the > > image display window to exit. > > > +./tflite_classification -m ../examples/mobilenet_v1_1.0_224_quant.tflite - > > i ../examples/grace_hopper.bmp -l ../examples/labels.txt > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_segmentation.sh b/meta-arago-extras/recipes- > > support/tensorflow-lite/files/run_segmentation.sh > > > new file mode 100644 > > > index 00000000..5caea127 > > > --- /dev/null > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > lite/files/run_segmentation.sh > > > @@ -0,0 +1,8 @@ > > > +#!/bin/sh > > > + > > > +cd /usr/share/tensorflow-lite/demos > > > + > > > +# Run tflite_segmentation binary with the model and the input image > > specified. > > > +# The display window shows the input(resized) image, segmentation > > map, overlay > > > +# of the former two. Right click the image display window to exit. > > > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i > > ./bird_segmentation.bmp > > > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow- > > lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow- > > lite/tensorflow-lite-demo_git.bb > > > new file mode 100644 > > > index 00000000..9b99b63c > > > --- /dev/null > > > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite- > > demo_git.bb > > > @@ -0,0 +1,53 @@ > > > +DESCRIPTION = "Tensorflow Lite Demo with input and display via OpenCV > > and TIDL acceleration for AM5" > > > > SUMMARY? > > Do you mean adding "SUMMARY" or replacing "DESCRIPTION" with "SUMMARY"? Either. > > > +LICENSE = "Apache-2.0" > > > +LIC_FILES_CHKSUM = > > "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > > > + > > > +DEPENDS = "tensorflow-lite flatbuffers opencv" > > > + > > > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" > > > > Why ^^^? > > This demo has dependency on OpenCV for GUI display, which is available for the machines above. Yes, pushed a fix for that - OpenCV was limited to DSP-enabled platforms in Zeus due to initial integration limitations. > > > +PV = "01.00.00" > > > +PR = "r0" > > > + > > > +BRANCH = "master" > > > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite- > > examples.git;protocol=git;branch=${BRANCH} \ > > > + > > http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/ > > deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model > > ;destsuffix=model \ > > > + http://raw.githubusercontent.com/google- > > coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segm > > entation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > > > + file://run_classification.sh \ > > > + file://run_segmentation.sh" > > > + > > > +SRC_URI[deeplabv3.md5sum] = "4a24db5a5fb05c47586a1197765e8548" > > > +SRC_URI[deeplabv3.sha256sum] = > > "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > > > +SRC_URI[bird_segmentation.md5sum] = > > "fc3202ac4e3033b36df3043de6dc32c9" > > > +SRC_URI[bird_segmentation.sha256sum] = > > "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > > > + > > > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > > > + > > > +S = "${WORKDIR}/git" > > > + > > > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" > > > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > > > + > > > +EXTRA_OEMAKE = "\ > > > + 'CXX=${CXX}' \ > > > + 'CXXFLAGS=${CXXFLAGS}' \ > > > + 'AR=${AR}' \ > > > + 'LD=${LD}' \ > > > + 'LDFLAGS=${LDFLAGS}' \ > > > + 'TARGET=${TARGET_OS}' \ > > > + 'TARGET_ARCH=${TARGET_ARCH}'" > > > + > > > +do_compile() { > > > + oe_runmake -f Makefile > > > +} > > > + > > > +do_install() { > > > + install -d ${D}${datadir}/tensorflow-lite/demos > > > + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow- > > lite/demos > > > + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow- > > lite/demos > > > + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite > > ${D}${datadir}/tensorflow-lite/demos > > > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp > > ${D}${datadir}/tensorflow-lite/demos > > > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow- > > lite/demos > > > +} > > > + > > > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > > > -- > > > 2.17.1 > > > > > > _______________________________________________ > > > meta-arago mailing list > > > meta-arago@arago-project.org > > > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-28 17:12 ` Denys Dmytriyenko @ 2020-02-28 17:22 ` Gou, Hongmei 2020-02-28 17:25 ` Denys Dmytriyenko 0 siblings, 1 reply; 10+ messages in thread From: Gou, Hongmei @ 2020-02-28 17:22 UTC (permalink / raw) To: Dmytriyenko, Denys; +Cc: meta-arago > -----Original Message----- > From: Dmytriyenko, Denys > Sent: Friday, February 28, 2020 12:12 PM > To: Gou, Hongmei > Cc: meta-arago@arago-project.org > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite-demo: > add version 01.00.00 > > On Fri, Feb 28, 2020 at 12:00:46PM -0500, Gou, Hongmei wrote: > > > -----Original Message----- > > > From: Dmytriyenko, Denys > > > Sent: Thursday, February 27, 2020 6:15 PM > > > To: Gou, Hongmei > > > Cc: meta-arago@arago-project.org > > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite- > demo: > > > add version 01.00.00 > > > > > > On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > > > > * This supports classification and segmentation demos with tensorflow > lite > > > models > > > > running on Arm. It demonstrates the whole pipeline from > > > image/video/camera input, > > > > to tensorflow lite inference, to display the classification/segemenation > > > results. > > > > > > > > * OpenCV is used for capturing the input and displaying the results. > > > > > > > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > > > > --- > > > > .../files/run_classification.sh | 7 +++ > > > > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > > > > .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ > > > > 3 files changed, 68 insertions(+) > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_classification.sh > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_segmentation.sh > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > lite/tensorflow-lite-demo_git.bb > > > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_classification.sh b/meta-arago-extras/recipes- > > > support/tensorflow-lite/files/run_classification.sh > > > > new file mode 100644 > > > > index 00000000..b2ad7fc4 > > > > --- /dev/null > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_classification.sh > > > > @@ -0,0 +1,7 @@ > > > > +#!/bin/sh > > > > + > > > > +cd /usr/share/tensorflow-lite/demos > > > > + > > > > +# Run tflite_classification binary with the model, the input image, and > the > > > label file specified. > > > > +# Classification label is overlayed with the input image. Right click the > > > image display window to exit. > > > > +./tflite_classification -m > ../examples/mobilenet_v1_1.0_224_quant.tflite - > > > i ../examples/grace_hopper.bmp -l ../examples/labels.txt > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_segmentation.sh b/meta-arago-extras/recipes- > > > support/tensorflow-lite/files/run_segmentation.sh > > > > new file mode 100644 > > > > index 00000000..5caea127 > > > > --- /dev/null > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > lite/files/run_segmentation.sh > > > > @@ -0,0 +1,8 @@ > > > > +#!/bin/sh > > > > + > > > > +cd /usr/share/tensorflow-lite/demos > > > > + > > > > +# Run tflite_segmentation binary with the model and the input image > > > specified. > > > > +# The display window shows the input(resized) image, segmentation > > > map, overlay > > > > +# of the former two. Right click the image display window to exit. > > > > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i > > > ./bird_segmentation.bmp > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > lite/tensorflow- > > > lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow- > > > lite/tensorflow-lite-demo_git.bb > > > > new file mode 100644 > > > > index 00000000..9b99b63c > > > > --- /dev/null > > > > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow- > lite- > > > demo_git.bb > > > > @@ -0,0 +1,53 @@ > > > > +DESCRIPTION = "Tensorflow Lite Demo with input and display via > OpenCV > > > and TIDL acceleration for AM5" > > > > > > SUMMARY? > > > > Do you mean adding "SUMMARY" or replacing "DESCRIPTION" with > "SUMMARY"? > > Either. Thank you! Just submitted a v2 patch to replace "DESCRIPTION" with "SUMMARY". > > > > > > +LICENSE = "Apache-2.0" > > > > +LIC_FILES_CHKSUM = > > > "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > > > > + > > > > +DEPENDS = "tensorflow-lite flatbuffers opencv" > > > > + > > > > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" > > > > > > Why ^^^? > > > > This demo has dependency on OpenCV for GUI display, which is available > for the machines above. > > Yes, pushed a fix for that - OpenCV was limited to DSP-enabled platforms in > Zeus due to initial integration limitations. > > > > > > +PV = "01.00.00" > > > > +PR = "r0" > > > > + > > > > +BRANCH = "master" > > > > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite- > > > examples.git;protocol=git;branch=${BRANCH} \ > > > > + > > > > http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/ > > > > deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model > > > ;destsuffix=model \ > > > > + http://raw.githubusercontent.com/google- > > > > coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segm > > > entation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > > > > + file://run_classification.sh \ > > > > + file://run_segmentation.sh" > > > > + > > > > +SRC_URI[deeplabv3.md5sum] = > "4a24db5a5fb05c47586a1197765e8548" > > > > +SRC_URI[deeplabv3.sha256sum] = > > > > "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > > > > +SRC_URI[bird_segmentation.md5sum] = > > > "fc3202ac4e3033b36df3043de6dc32c9" > > > > +SRC_URI[bird_segmentation.sha256sum] = > > > > "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > > > > + > > > > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > > > > + > > > > +S = "${WORKDIR}/git" > > > > + > > > > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" > > > > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > > > > + > > > > +EXTRA_OEMAKE = "\ > > > > + 'CXX=${CXX}' \ > > > > + 'CXXFLAGS=${CXXFLAGS}' \ > > > > + 'AR=${AR}' \ > > > > + 'LD=${LD}' \ > > > > + 'LDFLAGS=${LDFLAGS}' \ > > > > + 'TARGET=${TARGET_OS}' \ > > > > + 'TARGET_ARCH=${TARGET_ARCH}'" > > > > + > > > > +do_compile() { > > > > + oe_runmake -f Makefile > > > > +} > > > > + > > > > +do_install() { > > > > + install -d ${D}${datadir}/tensorflow-lite/demos > > > > + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow- > > > lite/demos > > > > + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow- > > > lite/demos > > > > + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite > > > ${D}${datadir}/tensorflow-lite/demos > > > > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp > > > ${D}${datadir}/tensorflow-lite/demos > > > > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow- > > > lite/demos > > > > +} > > > > + > > > > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > > > > -- > > > > 2.17.1 > > > > > > > > _______________________________________________ > > > > meta-arago mailing list > > > > meta-arago@arago-project.org > > > > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-28 17:22 ` Gou, Hongmei @ 2020-02-28 17:25 ` Denys Dmytriyenko 2020-02-28 17:54 ` Gou, Hongmei 0 siblings, 1 reply; 10+ messages in thread From: Denys Dmytriyenko @ 2020-02-28 17:25 UTC (permalink / raw) To: Gou, Hongmei; +Cc: meta-arago On Fri, Feb 28, 2020 at 12:22:36PM -0500, Gou, Hongmei wrote: > > -----Original Message----- > > From: Dmytriyenko, Denys > > Sent: Friday, February 28, 2020 12:12 PM > > To: Gou, Hongmei > > Cc: meta-arago@arago-project.org > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite-demo: > > add version 01.00.00 > > > > On Fri, Feb 28, 2020 at 12:00:46PM -0500, Gou, Hongmei wrote: > > > > -----Original Message----- > > > > From: Dmytriyenko, Denys > > > > Sent: Thursday, February 27, 2020 6:15 PM > > > > To: Gou, Hongmei > > > > Cc: meta-arago@arago-project.org > > > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite- > > demo: > > > > add version 01.00.00 > > > > > > > > On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > > > > > * This supports classification and segmentation demos with tensorflow > > lite > > > > models > > > > > running on Arm. It demonstrates the whole pipeline from > > > > image/video/camera input, > > > > > to tensorflow lite inference, to display the classification/segemenation > > > > results. > > > > > > > > > > * OpenCV is used for capturing the input and displaying the results. > > > > > > > > > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > > > > > --- > > > > > .../files/run_classification.sh | 7 +++ > > > > > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > > > > > .../tensorflow-lite-demo_git.bb | 53 +++++++++++++++++++ > > > > > 3 files changed, 68 insertions(+) > > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_classification.sh > > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_segmentation.sh > > > > > create mode 100644 meta-arago-extras/recipes-support/tensorflow- > > > > lite/tensorflow-lite-demo_git.bb > > > > > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_classification.sh b/meta-arago-extras/recipes- > > > > support/tensorflow-lite/files/run_classification.sh > > > > > new file mode 100644 > > > > > index 00000000..b2ad7fc4 > > > > > --- /dev/null > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_classification.sh > > > > > @@ -0,0 +1,7 @@ > > > > > +#!/bin/sh > > > > > + > > > > > +cd /usr/share/tensorflow-lite/demos > > > > > + > > > > > +# Run tflite_classification binary with the model, the input image, and > > the > > > > label file specified. > > > > > +# Classification label is overlayed with the input image. Right click the > > > > image display window to exit. > > > > > +./tflite_classification -m > > ../examples/mobilenet_v1_1.0_224_quant.tflite - > > > > i ../examples/grace_hopper.bmp -l ../examples/labels.txt > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_segmentation.sh b/meta-arago-extras/recipes- > > > > support/tensorflow-lite/files/run_segmentation.sh > > > > > new file mode 100644 > > > > > index 00000000..5caea127 > > > > > --- /dev/null > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > > lite/files/run_segmentation.sh > > > > > @@ -0,0 +1,8 @@ > > > > > +#!/bin/sh > > > > > + > > > > > +cd /usr/share/tensorflow-lite/demos > > > > > + > > > > > +# Run tflite_segmentation binary with the model and the input image > > > > specified. > > > > > +# The display window shows the input(resized) image, segmentation > > > > map, overlay > > > > > +# of the former two. Right click the image display window to exit. > > > > > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i > > > > ./bird_segmentation.bmp > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > lite/tensorflow- > > > > lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow- > > > > lite/tensorflow-lite-demo_git.bb > > > > > new file mode 100644 > > > > > index 00000000..9b99b63c > > > > > --- /dev/null > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow- > > lite- > > > > demo_git.bb > > > > > @@ -0,0 +1,53 @@ > > > > > +DESCRIPTION = "Tensorflow Lite Demo with input and display via > > OpenCV > > > > and TIDL acceleration for AM5" > > > > > > > > SUMMARY? > > > > > > Do you mean adding "SUMMARY" or replacing "DESCRIPTION" with > > "SUMMARY"? > > > > Either. > > Thank you! Just submitted a v2 patch to replace "DESCRIPTION" with "SUMMARY". SUMMARY is required and is a short one-line. DESCRIPTION is optional and can be a longer, more detailed one. BTW, I already merged v1 - can you please submit a separate change? Thanks! > > > > > +LICENSE = "Apache-2.0" > > > > > +LIC_FILES_CHKSUM = > > > > "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > > > > > + > > > > > +DEPENDS = "tensorflow-lite flatbuffers opencv" > > > > > + > > > > > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" > > > > > > > > Why ^^^? > > > > > > This demo has dependency on OpenCV for GUI display, which is available > > for the machines above. > > > > Yes, pushed a fix for that - OpenCV was limited to DSP-enabled platforms in > > Zeus due to initial integration limitations. > > > > > > > > > +PV = "01.00.00" > > > > > +PR = "r0" > > > > > + > > > > > +BRANCH = "master" > > > > > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite- > > > > examples.git;protocol=git;branch=${BRANCH} \ > > > > > + > > > > > > http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/ > > > > > > deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model > > > > ;destsuffix=model \ > > > > > + http://raw.githubusercontent.com/google- > > > > > > coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segm > > > > entation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > > > > > + file://run_classification.sh \ > > > > > + file://run_segmentation.sh" > > > > > + > > > > > +SRC_URI[deeplabv3.md5sum] = > > "4a24db5a5fb05c47586a1197765e8548" > > > > > +SRC_URI[deeplabv3.sha256sum] = > > > > > > "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > > > > > +SRC_URI[bird_segmentation.md5sum] = > > > > "fc3202ac4e3033b36df3043de6dc32c9" > > > > > +SRC_URI[bird_segmentation.sha256sum] = > > > > > > "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > > > > > + > > > > > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > > > > > + > > > > > +S = "${WORKDIR}/git" > > > > > + > > > > > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -I${STAGING_INCDIR}" > > > > > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > > > > > + > > > > > +EXTRA_OEMAKE = "\ > > > > > + 'CXX=${CXX}' \ > > > > > + 'CXXFLAGS=${CXXFLAGS}' \ > > > > > + 'AR=${AR}' \ > > > > > + 'LD=${LD}' \ > > > > > + 'LDFLAGS=${LDFLAGS}' \ > > > > > + 'TARGET=${TARGET_OS}' \ > > > > > + 'TARGET_ARCH=${TARGET_ARCH}'" > > > > > + > > > > > +do_compile() { > > > > > + oe_runmake -f Makefile > > > > > +} > > > > > + > > > > > +do_install() { > > > > > + install -d ${D}${datadir}/tensorflow-lite/demos > > > > > + install -m 0755 ${S}/tflite_classification ${D}${datadir}/tensorflow- > > > > lite/demos > > > > > + install -m 0755 ${S}/tflite_segmentation ${D}${datadir}/tensorflow- > > > > lite/demos > > > > > + install -m 0644 ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite > > > > ${D}${datadir}/tensorflow-lite/demos > > > > > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp > > > > ${D}${datadir}/tensorflow-lite/demos > > > > > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow- > > > > lite/demos > > > > > +} > > > > > + > > > > > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > > > > > -- > > > > > 2.17.1 > > > > > > > > > > _______________________________________________ > > > > > meta-arago mailing list > > > > > meta-arago@arago-project.org > > > > > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 2020-02-28 17:25 ` Denys Dmytriyenko @ 2020-02-28 17:54 ` Gou, Hongmei 0 siblings, 0 replies; 10+ messages in thread From: Gou, Hongmei @ 2020-02-28 17:54 UTC (permalink / raw) To: Dmytriyenko, Denys; +Cc: meta-arago > -----Original Message----- > From: Dmytriyenko, Denys > Sent: Friday, February 28, 2020 12:25 PM > To: Gou, Hongmei > Cc: meta-arago@arago-project.org > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite-demo: > add version 01.00.00 > > On Fri, Feb 28, 2020 at 12:22:36PM -0500, Gou, Hongmei wrote: > > > -----Original Message----- > > > From: Dmytriyenko, Denys > > > Sent: Friday, February 28, 2020 12:12 PM > > > To: Gou, Hongmei > > > Cc: meta-arago@arago-project.org > > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite- > demo: > > > add version 01.00.00 > > > > > > On Fri, Feb 28, 2020 at 12:00:46PM -0500, Gou, Hongmei wrote: > > > > > -----Original Message----- > > > > > From: Dmytriyenko, Denys > > > > > Sent: Thursday, February 27, 2020 6:15 PM > > > > > To: Gou, Hongmei > > > > > Cc: meta-arago@arago-project.org > > > > > Subject: Re: [meta-arago] [zeus/master] [PATCH 2/3] tensorflow-lite- > > > demo: > > > > > add version 01.00.00 > > > > > > > > > > On Tue, Feb 25, 2020 at 06:12:25PM -0500, Hongmei Gou wrote: > > > > > > * This supports classification and segmentation demos with > tensorflow > > > lite > > > > > models > > > > > > running on Arm. It demonstrates the whole pipeline from > > > > > image/video/camera input, > > > > > > to tensorflow lite inference, to display the > classification/segemenation > > > > > results. > > > > > > > > > > > > * OpenCV is used for capturing the input and displaying the results. > > > > > > > > > > > > Signed-off-by: Hongmei Gou <a0271529@ti.com> > > > > > > --- > > > > > > .../files/run_classification.sh | 7 +++ > > > > > > .../tensorflow-lite/files/run_segmentation.sh | 8 +++ > > > > > > .../tensorflow-lite-demo_git.bb | 53 > +++++++++++++++++++ > > > > > > 3 files changed, 68 insertions(+) > > > > > > create mode 100644 meta-arago-extras/recipes- > support/tensorflow- > > > > > lite/files/run_classification.sh > > > > > > create mode 100644 meta-arago-extras/recipes- > support/tensorflow- > > > > > lite/files/run_segmentation.sh > > > > > > create mode 100644 meta-arago-extras/recipes- > support/tensorflow- > > > > > lite/tensorflow-lite-demo_git.bb > > > > > > > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > > > lite/files/run_classification.sh b/meta-arago-extras/recipes- > > > > > support/tensorflow-lite/files/run_classification.sh > > > > > > new file mode 100644 > > > > > > index 00000000..b2ad7fc4 > > > > > > --- /dev/null > > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > > > lite/files/run_classification.sh > > > > > > @@ -0,0 +1,7 @@ > > > > > > +#!/bin/sh > > > > > > + > > > > > > +cd /usr/share/tensorflow-lite/demos > > > > > > + > > > > > > +# Run tflite_classification binary with the model, the input image, > and > > > the > > > > > label file specified. > > > > > > +# Classification label is overlayed with the input image. Right click > the > > > > > image display window to exit. > > > > > > +./tflite_classification -m > > > ../examples/mobilenet_v1_1.0_224_quant.tflite - > > > > > i ../examples/grace_hopper.bmp -l ../examples/labels.txt > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > > > lite/files/run_segmentation.sh b/meta-arago-extras/recipes- > > > > > support/tensorflow-lite/files/run_segmentation.sh > > > > > > new file mode 100644 > > > > > > index 00000000..5caea127 > > > > > > --- /dev/null > > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > > > > > lite/files/run_segmentation.sh > > > > > > @@ -0,0 +1,8 @@ > > > > > > +#!/bin/sh > > > > > > + > > > > > > +cd /usr/share/tensorflow-lite/demos > > > > > > + > > > > > > +# Run tflite_segmentation binary with the model and the input > image > > > > > specified. > > > > > > +# The display window shows the input(resized) image, > segmentation > > > > > map, overlay > > > > > > +# of the former two. Right click the image display window to exit. > > > > > > +./tflite_segmentation -m ./deeplabv3_257_mv_gpu.tflite -i > > > > > ./bird_segmentation.bmp > > > > > > diff --git a/meta-arago-extras/recipes-support/tensorflow- > > > lite/tensorflow- > > > > > lite-demo_git.bb b/meta-arago-extras/recipes-support/tensorflow- > > > > > lite/tensorflow-lite-demo_git.bb > > > > > > new file mode 100644 > > > > > > index 00000000..9b99b63c > > > > > > --- /dev/null > > > > > > +++ b/meta-arago-extras/recipes-support/tensorflow- > lite/tensorflow- > > > lite- > > > > > demo_git.bb > > > > > > @@ -0,0 +1,53 @@ > > > > > > +DESCRIPTION = "Tensorflow Lite Demo with input and display via > > > OpenCV > > > > > and TIDL acceleration for AM5" > > > > > > > > > > SUMMARY? > > > > > > > > Do you mean adding "SUMMARY" or replacing "DESCRIPTION" with > > > "SUMMARY"? > > > > > > Either. > > > > Thank you! Just submitted a v2 patch to replace "DESCRIPTION" with > "SUMMARY". > > SUMMARY is required and is a short one-line. > DESCRIPTION is optional and can be a longer, more detailed one. > > BTW, I already merged v1 - can you please submit a separate change? > Thanks! Sure, I will include this change with my next recipe patch which adds the TIDL offload for AM5. > > > > > > > > +LICENSE = "Apache-2.0" > > > > > > +LIC_FILES_CHKSUM = > > > > > "file://LICENSE;md5=d8927f3331d2b3e321b7dd1925166d25" > > > > > > + > > > > > > +DEPENDS = "tensorflow-lite flatbuffers opencv" > > > > > > + > > > > > > +COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx" > > > > > > > > > > Why ^^^? > > > > > > > > This demo has dependency on OpenCV for GUI display, which is > available > > > for the machines above. > > > > > > Yes, pushed a fix for that - OpenCV was limited to DSP-enabled platforms > in > > > Zeus due to initial integration limitations. > > > > > > > > > > > > +PV = "01.00.00" > > > > > > +PR = "r0" > > > > > > + > > > > > > +BRANCH = "master" > > > > > > +SRC_URI = "git://git.ti.com/apps/tensorflow-lite- > > > > > examples.git;protocol=git;branch=${BRANCH} \ > > > > > > + > > > > > > > > > http://storage.googleapis.com/download.tensorflow.org/models/tflite/gpu/ > > > > > > > > > deeplabv3_257_mv_gpu.tflite;name=deeplabv3;subdir=${WORKDIR}/model > > > > > ;destsuffix=model \ > > > > > > + http://raw.githubusercontent.com/google- > > > > > > > > > coral/edgetpu/master/test_data/bird_segmentation.bmp;name=bird_segm > > > > > entation;subdir=${WORKDIR}/test_data;destsuffix=test_data \ > > > > > > + file://run_classification.sh \ > > > > > > + file://run_segmentation.sh" > > > > > > + > > > > > > +SRC_URI[deeplabv3.md5sum] = > > > "4a24db5a5fb05c47586a1197765e8548" > > > > > > +SRC_URI[deeplabv3.sha256sum] = > > > > > > > > > "68a539782c2c6a72f8aac3724600124a85ed977162b44e84cbae5db717c933c6" > > > > > > +SRC_URI[bird_segmentation.md5sum] = > > > > > "fc3202ac4e3033b36df3043de6dc32c9" > > > > > > +SRC_URI[bird_segmentation.sha256sum] = > > > > > > > > > "e43cedd29ab385db787531c8a6cdcb31c5e4292af34f242877ed40611e502670" > > > > > > + > > > > > > +SRCREV = "d84f1d43585c0db2fa6a1c15db9145ab53f859ce" > > > > > > + > > > > > > +S = "${WORKDIR}/git" > > > > > > + > > > > > > +CXXFLAGS_append = " -O3 -DNDEBUG -fPIC - > I${STAGING_INCDIR}" > > > > > > +LDFLAGS_append = " -L${STAGING_LIBDIR}" > > > > > > + > > > > > > +EXTRA_OEMAKE = "\ > > > > > > + 'CXX=${CXX}' \ > > > > > > + 'CXXFLAGS=${CXXFLAGS}' \ > > > > > > + 'AR=${AR}' \ > > > > > > + 'LD=${LD}' \ > > > > > > + 'LDFLAGS=${LDFLAGS}' \ > > > > > > + 'TARGET=${TARGET_OS}' \ > > > > > > + 'TARGET_ARCH=${TARGET_ARCH}'" > > > > > > + > > > > > > +do_compile() { > > > > > > + oe_runmake -f Makefile > > > > > > +} > > > > > > + > > > > > > +do_install() { > > > > > > + install -d ${D}${datadir}/tensorflow-lite/demos > > > > > > + install -m 0755 ${S}/tflite_classification > ${D}${datadir}/tensorflow- > > > > > lite/demos > > > > > > + install -m 0755 ${S}/tflite_segmentation > ${D}${datadir}/tensorflow- > > > > > lite/demos > > > > > > + install -m 0644 > ${WORKDIR}/model/deeplabv3_257_mv_gpu.tflite > > > > > ${D}${datadir}/tensorflow-lite/demos > > > > > > + install -m 0644 ${WORKDIR}/test_data/bird_segmentation.bmp > > > > > ${D}${datadir}/tensorflow-lite/demos > > > > > > + install -m 0755 ${WORKDIR}/run*.sh ${D}${datadir}/tensorflow- > > > > > lite/demos > > > > > > +} > > > > > > + > > > > > > +FILES_${PN} = "${datadir}/tensorflow-lite/demos" > > > > > > -- > > > > > > 2.17.1 > > > > > > > > > > > > _______________________________________________ > > > > > > meta-arago mailing list > > > > > > meta-arago@arago-project.org > > > > > > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
* [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo 2020-02-25 23:12 [zeus/master] [PATCH 1/3] tensorflow-lite: add header files and change the install location of the example files Hongmei Gou 2020-02-25 23:12 ` [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 Hongmei Gou @ 2020-02-25 23:12 ` Hongmei Gou 2020-02-25 23:31 ` Denys Dmytriyenko 1 sibling, 1 reply; 10+ messages in thread From: Hongmei Gou @ 2020-02-25 23:12 UTC (permalink / raw) To: meta-arago; +Cc: Hongmei Gou Signed-off-by: Hongmei Gou <a0271529@ti.com> --- .../packagegroup-arago-tisdk-addons.bb | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb index a68662a7..2ed1abf7 100644 --- a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb +++ b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb @@ -1,6 +1,6 @@ DESCRIPTION = "Task to install additional utilities/demos for SDKs" LICENSE = "MIT" -PR = "r76" +PR = "r77" PACKAGE_ARCH = "${MACHINE_ARCH}" @@ -156,14 +156,16 @@ VOXEL_PACKAGES = "" EXTRA_PACKAGES_append_ti33x = " ${VOXEL_PACKAGES} \ arm-compute-library \ ${ARMNN_PACKAGES} \ - tensorflow-lite-examples \ + tensorflow-lite \ + tensorflow-lite-demo \ pdm-anomaly-detection \ " EXTRA_PACKAGES_append_ti43x = " ${VOXEL_PACKAGES} \ arm-compute-library \ ${ARMNN_PACKAGES} \ - tensorflow-lite-examples \ + tensorflow-lite \ + tensorflow-lite-demo \ pdm-anomaly-detection \ " @@ -172,13 +174,15 @@ EXTRA_PACKAGES_append_omap-a15 = " ${VOXEL_PACKAGES} \ big-data-ipc-demo-linux-firmware \ arm-compute-library \ ${ARMNN_PACKAGES} \ - tensorflow-lite-examples \ + tensorflow-lite \ + tensorflow-lite-demo \ pdm-anomaly-detection \ " EXTRA_PACKAGES_append_am65xx = " arm-compute-library \ ${ARMNN_PACKAGES} \ - tensorflow-lite-examples \ + tensorflow-lite \ + tensorflow-lite-demo \ pdm-anomaly-detection \ " -- 2.17.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo 2020-02-25 23:12 ` [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo Hongmei Gou @ 2020-02-25 23:31 ` Denys Dmytriyenko 0 siblings, 0 replies; 10+ messages in thread From: Denys Dmytriyenko @ 2020-02-25 23:31 UTC (permalink / raw) To: Hongmei Gou; +Cc: meta-arago On Tue, Feb 25, 2020 at 06:12:26PM -0500, Hongmei Gou wrote: > Signed-off-by: Hongmei Gou <a0271529@ti.com> > --- > .../packagegroup-arago-tisdk-addons.bb | 14 +++++++++----- > 1 file changed, 9 insertions(+), 5 deletions(-) > > diff --git a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb > index a68662a7..2ed1abf7 100644 > --- a/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb > +++ b/meta-arago-distro/recipes-core/packagegroups/packagegroup-arago-tisdk-addons.bb > @@ -1,6 +1,6 @@ > DESCRIPTION = "Task to install additional utilities/demos for SDKs" > LICENSE = "MIT" > -PR = "r76" > +PR = "r77" > > PACKAGE_ARCH = "${MACHINE_ARCH}" > > @@ -156,14 +156,16 @@ VOXEL_PACKAGES = "" > EXTRA_PACKAGES_append_ti33x = " ${VOXEL_PACKAGES} \ > arm-compute-library \ > ${ARMNN_PACKAGES} \ > - tensorflow-lite-examples \ > + tensorflow-lite \ > + tensorflow-lite-demo \ tensorflow-lite-demo already depdens on tensorflow-lite - no need to explicitly pull both. > pdm-anomaly-detection \ > " > > EXTRA_PACKAGES_append_ti43x = " ${VOXEL_PACKAGES} \ > arm-compute-library \ > ${ARMNN_PACKAGES} \ > - tensorflow-lite-examples \ > + tensorflow-lite \ > + tensorflow-lite-demo \ > pdm-anomaly-detection \ > " > > @@ -172,13 +174,15 @@ EXTRA_PACKAGES_append_omap-a15 = " ${VOXEL_PACKAGES} \ > big-data-ipc-demo-linux-firmware \ > arm-compute-library \ > ${ARMNN_PACKAGES} \ > - tensorflow-lite-examples \ > + tensorflow-lite \ > + tensorflow-lite-demo \ > pdm-anomaly-detection \ > " > > EXTRA_PACKAGES_append_am65xx = " arm-compute-library \ > ${ARMNN_PACKAGES} \ > - tensorflow-lite-examples \ > + tensorflow-lite \ > + tensorflow-lite-demo \ > pdm-anomaly-detection \ > " > > -- > 2.17.1 > > _______________________________________________ > meta-arago mailing list > meta-arago@arago-project.org > http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2020-02-28 17:56 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-02-25 23:12 [zeus/master] [PATCH 1/3] tensorflow-lite: add header files and change the install location of the example files Hongmei Gou 2020-02-25 23:12 ` [zeus/master] [PATCH 2/3] tensorflow-lite-demo: add version 01.00.00 Hongmei Gou 2020-02-27 23:14 ` Denys Dmytriyenko 2020-02-28 17:00 ` Gou, Hongmei 2020-02-28 17:12 ` Denys Dmytriyenko 2020-02-28 17:22 ` Gou, Hongmei 2020-02-28 17:25 ` Denys Dmytriyenko 2020-02-28 17:54 ` Gou, Hongmei 2020-02-25 23:12 ` [zeus/master] [PATCH 3/3] packagegroup-arago-tisdk-addons: replace tensorflow-lite-examples with tensorflow-lite and add tensorflow-lite-demo Hongmei Gou 2020-02-25 23:31 ` Denys Dmytriyenko
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.