AravisProject / aravis

A vision library for genicam based cameras
GNU Lesser General Public License v2.1
911 stars 336 forks source link

LUCID Triton support #514

Closed dyoo-dev closed 3 years ago

dyoo-dev commented 3 years ago

Hello, Thank you for this great project. I am using LUCID Triton 0.4MP camera on CentOS 7. When I run the following command, it detects the camera, but can't get image data.

$ arv-camera-test-0.8 -n "10.0.0.123"

This is the debug log. I don't know what I should look at. Any thought or opinion would be great.

/bin/arv-camera-test-0.8 -n "10.0.0.123"
Looking for camera '10.0.0.123'
[17:04:01.695] ๐Ÿ…ธ device> [GvDevice::new] Interface address = 10.0.0.2
[17:04:01.695] ๐Ÿ…ธ device> [GvDevice::new] Device address = 10.0.0.123
[17:04:01.700] ๐Ÿ…ธ device> [GvDevice::load_genicam] xml url = 'Local:Lucid_Vision_Labs_TRI004S-C_rev1_0_288aca1993d678e65944c943b7a64cb0.zip;800d9370;f202' at 0x200
[17:04:01.700] ๐Ÿ…ธ device> [GvDevice::load_genicam] Xml address = 0x800d9370 - size = 0xf202 - Lucid_Vision_Labs_TRI004S-C_rev1_0_288aca1993d678e65944c943b7a64cb0.zip
[17:04:02.142] ๐Ÿ…ธ device> [GvDevice::load_genicam] Zipped xml data
[17:04:02.147] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'xmlns:mstns'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.182] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.183] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.183] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.183] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.183] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.184] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.185] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.186] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.187] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.187] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.187] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.187] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.188] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.188] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.188] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.188] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.188] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.189] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.190] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.191] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.192] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.192] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.192] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.192] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.192] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.193] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.194] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.194] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.194] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.194] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.194] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.195] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.196] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.197] ๐Ÿ…ธ dom> [GcFeature::set_attribute] Unknown attribute 'Comment'
[17:04:02.198] ๐Ÿ…ธ genicam> [Gc::set_default_node_data] Add 'DeviceID'
[17:04:02.198] ๐Ÿ…ธ genicam> [Gc::set_default_node_data] Add 'GevStreamChannelCount'
[17:04:02.198] ๐Ÿ…ธ genicam> [Gc::set_default_node_data] Add 'GevTimestampTickFrequency'
[17:04:02.199] ๐Ÿ…ธ genicam> [Gc::set_default_node_data] Add 'GevSCPSBigEndian'
[17:04:02.199] ๐Ÿ…ธ genicam> [Gc::set_default_node_data] Add 'GevSCPAddrCalc'
[17:04:02.203] ๐Ÿ…ธ device> [GvDevice::new] Device endianness = big
[17:04:02.203] ๐Ÿ…ธ device> [GvDevice::new] Packet resend     = yes
[17:04:02.203] ๐Ÿ…ธ device> [GvDevice::new] Write memory      = yes
[17:04:02.203] ๐Ÿ…ธ device> [GvDevice::new] Legacy endianness handling = no
vendor name           = Lucid Vision Labs
model name            = TRI004S-C
device serial number  = 211800833
image width           = 720
image height          = 540
horizontal binning    = 1
vertical binning      = 1
exposure              = 37449.9 ยตs
gain                  = 0 dB
payload               = 388800 bytes
gv n_stream channels  = 1
gv current channel    = 0
gv packet delay       = 80 ns
gv packet size        = 1400 bytes
[17:04:02.277] ๐Ÿ…ธ device> [GvDevice::create_stream] Number of stream channels = 1
[17:04:02.283] ๐Ÿ…ธ device> [GvStream::stream_new] Packet size = 1400 byte(s)
[17:04:02.290] ๐Ÿ…ธ stream> [GvStream::stream_new] Destination stream port = 57650
[17:04:02.290] ๐Ÿ…ธ stream> [GvStream::stream_new] Source stream port = 49154
[17:04:02.290] ๐Ÿ…ธ stream-thread> [GvStream::stream_thread] Packet timeout = 20 ms
[17:04:02.290] ๐Ÿ…ธ stream-thread> [GvStream::stream_thread] Frame retention = 100 ms
[17:04:02.290] ๐Ÿ…ธ stream> [GvStream::loop] Standard socket method
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
  0 frame/s  -       0 MiB/s
^C  0 frame/s  -       0 MiB/s
Completed buffers = 0
Failures          = 0
Underruns         = 0
[17:04:12.406] ๐Ÿ…ธ stream>   bins  ;Buffer r
       0;       0
-------------
>=  2000;       0
<      0;       0
min     ;     n/a
max     ;     n/a
last max
at:     ;       0
Counter =        0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_completed_buffers    = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_failures             = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_timeouts             = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_aborteds             = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_underruns            = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_missing_frames       = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_size_mismatch_errors = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_received_packets     = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_missing_packets      = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_error_packets        = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_ignored_packets      = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_resend_requests      = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_resent_packets       = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_resend_ratio_reached = 0
[17:04:12.406] ๐Ÿ…ธ stream> [GvStream::finalize] n_duplicated_packets   = 0
[17:04:12.406] ๐Ÿ…ธ stream> [Stream::finalize] Flush 50 buffer[s] in input queue
[17:04:12.406] ๐Ÿ…ธ stream> [Stream::finalize] Flush 0 buffer[s] in output queue
hendrenja commented 3 years ago

@dyoo-dev - I wish you the best of luck with this one. We have found Lucid devices work with a very slim set of third-party GenICam/GEV producers. We have an open ticket with Lucid Support regarding this exact behavior. My understanding is that they have done something non-standard in the stream transport.

Vendors typically provide a Common Transport Interface (CTI) library that can be used to dynamically load the vendor-specific GenTL producer functionality. Lucid has a prototype library available for Windows but there is not a solution for Linux users.

We resorted to building a Lucid-specific camera app using their ArenaSDK.

EmmanuelP commented 3 years ago

Did you try to force the camera framerate, using -f option ?

dyoo-dev commented 3 years ago

@EmmanuelP @haaninjo Thank you for your responses. I found that the firewall of CentOs blocked the image capture.

EmmanuelP commented 3 years ago

Thanks for the follow up.

NihalSoans commented 2 years ago

I was having the same issue. @hendrenja's comment helped me find the issue I was having. Setting the node "GevGVSPExtendedIDMode" to 'Off' worked for me.

rgov commented 1 year ago

@NihalSoans It looks like extended IDs have been supported since Aravis 0.8.0 in 2020 (commit). Any idea why disabling it for Lucid cameras was necessary for you?

rgov commented 1 year ago

For what it's worth, my LUCID Phoenix works fine in Aravis 0.8.