Bug with rectifier: GenericSimpleFormatConverter


I’m having a strange issue while trying to rebuild the sample rectifier even if i use the geniune main.cpp file:

terminate called after throwing an instance of ‘std::runtime_error’
what(): GenericSimpleFormatConverter: Unsupported input type

This is what i have when i use gdb:

#0 0x0000007fb395b528 in __GI_raise (sig=sig@entry=6)
at …/sysdeps/unix/sysv/linux/raise.c:54
#1 0x0000007fb395c9e0 in __GI_abort () at abort.c:89
#2 0x0000007fb3bcf6c8 in __gnu_cxx::__verbose_terminate_handler() ()
from /usr/lib/aarch64-linux-gnu/libstdc++.so.6
#3 0x0000007fb3bcd444 in ?? () from /usr/lib/aarch64-linux-gnu/libstdc++.so.6
#4 0x0000007fb3bcd490 in std::terminate() ()
from /usr/lib/aarch64-linux-gnu/libstdc++.so.6
#5 0x0000007fb3bcd714 in __cxa_throw () from /usr/lib/aarch64-linux-gnu/libstdc++.so.6
#6 0x00000000004284b4 in dw_samples::common::GenericSimpleFormatConverter::GenericSimpleFormatConverter(dwImageProperties const&, dwImageProperties const&, dwContextObject*)
#7 0x0000000000424a88 in dw_samples::common::SimpleCamera::enableGLOutput() ()
#8 0x00000000004155e8 in RectifierApp::initCameras() ()
#9 0x0000000000415978 in RectifierApp::onInitialize() ()
#10 0x0000000000417b38 in dw_samples::common::DriveWorksSample::run() ()
#11 0x000000000041483c in main ()

After some research i still have this issue, and if i use the default application it doesn’t take the values of distortion stored in the rig.xml file and the image isn’t undistorted.

To rectificate my videos i used the sample stereo_rectifier which works well for my Sekonix fisheye cameras (Sekonix SF 3325-100 [60°] and Sekonix SF 3324-100 [120°]). With stereo_rectifier i can’t use the option --single-input=1, the program correctly launch but crash saying “Segmentation fault (core dumped)” even with the default application.

Dear AdrienBonefons,
Did you make some changes in rectifier sample code and tried to rebuild? Which rig.xml is used by the application?

Dear SivaRamaKrishna,

Yes i first made modifications to put directly the path of my rig.xml and i wasn’t working so i used the original code I previously saved and it wasn’t working!

The rig.xml used by the application is /samples/sfm/triangulation/rig.xml

As this app wasn’t useful i rebuilt the Stereo_rectifier with my custom rig.xml and it worked perfectly so i retried with the rectifier but no good results.

Dear AdrienBonefons,
I did not understand the issue correctly as you are saying your application is working perfectly. Is the issue resolved?

There are two applications: sample_rectifier and sample_stereo_rectifier.

What i want is to be able to display one of my video file rectified, i can rectify the image with the second one but it displays 2 videos! And as i said before the option --single-input=1 doesn’t work.

Dear AdrienBonefons,
The --single-input=1 option needs to be used for only single stereo images. The cameras SF3324-100 and SF3325-100 are not stereo cameras. So you need to give two individual cameras as input and -single-input=1 does not work

I’m sorry but I don’t get it: can i use this option? if yes how should i do (rig/video configuration)?

Concerning the “sample_rectifier” i still have the issue i mentionned before.

You can not use --single-input option for the camera type you have(SF3324-100,SF3325-100). You need to have stereo camera which produces single stereo image to use this option.

For sample_rectifier, Can you please file a bug with code and steps to reproduce the error and share ID here to follow up?

OK, thank you!

Yes of course, there is the code i used: https://ufile.io/j5v3g

After compiling i have the executable sample_video_rectifier: https://ufile.io/kqkh6

Note: i previously named it sapmle_rectifier but the original name is sample_video_rectifier.
main.cpp (22.5 KB)