Giter Club home page Giter Club logo

Comments (9)

taos-ci avatar taos-ci commented on June 15, 2024

:octocat: cibot: Thank you for posting issue #21. The person in charge will reply soon.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

In your Ubuntu system, check /usr/lib/nnstreamer/filters

If there is no tensorflow plugin there, it means you need to install nnstreamer-tensorflow.

Anyway, it appears that we need to update the manual (we recently separated nnstreamer-{frameworks} from nnstreamer main packages) and the dependency declaration of nnstreamer-tensorflow is incorrect for Ubuntu.

In the meanwhile, you may force-install nnstreamer-tensorflow (tell dpkg or apt to ignore dependencies) if you have installed tensorflow already.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

helloahn : When a corresponding NNFW / subplugin does not exist, it is FATAL to the pipeline. Please emit READABLE messages without the need for GST_DEBUG envvars.

Never mind. I got this; I just remembered that such messages should not be emitted at the moment of "NNFW", but when it fails to start.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

@dseuss nnstreamer/nnstreamer#1205 is supposed to fix this; you'll be able to install nnstreamer-tensorflow from PPA after we merge that PR and launchpad.net accepts the updates.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

@dseuss The fixes are submitted to PPA/launchpad. You will soon be able to PPA-install nnstremer-tensorflow, which will fix this issue. With #1207 @ nnstreamer, any similar issues will generate clear error messages to notify to install the missing extension.

Thank you for the report!

from nnstreamer-example.

dsuess avatar dsuess commented on June 15, 2024

Thanks @myungjoo for your quick help. I have reinstalled the newest version from launchpad and still get the same error (with GST_DEBUG=1):

0:00:00.020441190    20 0x56198a467730 ERROR                default nnstreamer_subplugin.c:88:get_subplugin: Cannot dlopen tensorflow (/usr/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow.so).

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.767: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.768: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps2)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.768: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.768: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.768: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.768: gst_pad_template_new: assertion 'caps != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_element_request_compatible_pad: assertion 'GST_IS_PAD_TEMPLATE (templ)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_object_unref: assertion 'object != NULL' failed
0:00:00.043931484    20 0x56198a467730 ERROR           GST_PIPELINE grammar.y:740:gst_parse_perform_link: could not link tensorconverter0 to tensorfilter0

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps2)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.769: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.770: gst_pad_template_new: assertion 'caps != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.770: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.770: gst_element_request_compatible_pad: assertion 'GST_IS_PAD_TEMPLATE (templ)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_object_unref: assertion 'object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_mini_object_ref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_caps_can_intersect: assertion 'GST_IS_CAPS (caps1)' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_mini_object_unref: assertion 'mini_object != NULL' failed

(gst-launch-1.0:20): GStreamer-CRITICAL **: 05:29:18.771: gst_mini_object_ref: assertion 'mini_object != NULL' failed
0:00:00.047132131    20 0x56198a467730 ERROR           GST_PIPELINE grammar.y:740:gst_parse_perform_link: could not link tensorfilter0 to tensordec0

** (gst-launch-1.0:20): CRITICAL **: 05:29:18.772: _check_tensors: assertion 'config->info.num_tensors >= limit' failed

** (gst-launch-1.0:20): CRITICAL **: 05:29:18.772: _check_tensors: assertion 'config->info.num_tensors >= limit' failed

However, the "missing file" /usr/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow.so exists. For easier debugging, I've recreated the environment in a Dockerfile if you would like to test it.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

default nnstreamer_subplugin.c:88:get_subplugin: Cannot dlopen tensorflow (/usr/lib/nnstreamer/filters/libnnstreamer_filter_tensorflow.so)

In your docker, it appears that python 2.7 is required. It is probably because tensorflow of this build requires python 2.7. I, right now, don't sure why such dependencies are missing from packages. Normally, dependencies of shared obejcts are automatically resolved by packager (pdebuild).

root@f3643530ff89:/usr/lib/nnstreamer/filters# ldd libnnstreamer_filter_tensorflow.so 
	linux-vdso.so.1 (0x00007fff573ec000)
	libnnstreamer.so => /usr/lib/x86_64-linux-gnu/libnnstreamer.so (0x00007f84073a2000)
	libpywrap_tensorflow_internal.so => /usr/lib/libpywrap_tensorflow_internal.so (0x00007f83f714f000)
	libprotobuf.so.17 => /usr/lib/x86_64-linux-gnu/libprotobuf.so.17 (0x00007f83f6c85000)
	libglib-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007f83f696f000)
	libgstreamer-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstreamer-1.0.so.0 (0x00007f83f6634000)
	libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f83f62ab000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f83f6093000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f83f5ca2000)
	libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007f83f5a4e000)
	libgstbase-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstbase-1.0.so.0 (0x00007f83f57d9000)
	libgstvideo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstvideo-1.0.so.0 (0x00007f83f5541000)
	libgstaudio-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgstaudio-1.0.so.0 (0x00007f83f52cd000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f83f4f2f000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f83f4d2b000)
	liborc-0.4.so.0 => /usr/lib/x86_64-linux-gnu/liborc-0.4.so.0 (0x00007f83f4aaf000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f83f4890000)
	libpython2.7.so.1.0 => not found
	libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f83f4661000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f84077ea000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f83f4444000)
	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007f83f41d2000)
	libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007f83f3fce000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f83f3dc6000)
	libffi.so.6 => /usr/lib/x86_64-linux-gnu/libffi.so.6 (0x00007f83f3bbe000)
	libgsttag-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libgsttag-1.0.so.0 (0x00007f83f3983000)

After installing python 2.7 library:

apt-get install libpython2.7

It works!

root@f3643530ff89:/app/bash_script/example_object_detection_tensorflow# ./gst-launch-object-detection-tf.sh 
2019-03-07 06:33:40.675354: I /build/tensorflow-6N3_wg/tensorflow-1.9.0/tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX AVX2 FMA
Setting pipeline to PAUSED ...
ERROR: Pipeline doesn't want to pause.
ERROR: from element /GstPipeline:pipeline0/GstXImageSink:ximagesink0: Could not initialise X output
Additional debug info:
ximagesink.c(860): gst_x_image_sink_xcontext_get (): /GstPipeline:pipeline0/GstXImageSink:ximagesink0:
Could not open display
Setting pipeline to NULL ...
Freeing pipeline ...

This error is caused by the fact that I don't have GUI (X) support in docker.

from nnstreamer-example.

myungjoo avatar myungjoo commented on June 15, 2024

We'll address this "secondary bug" with nnstreamer/nnstreamer#1209

from nnstreamer-example.

dsuess avatar dsuess commented on June 15, 2024

Thanks @myungjoo, this has been extremely helpful. It does work for me now, too.

from nnstreamer-example.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.