[ros-users] Videre STOC Problem

Patrick Goebel patrick at pirobot.org
Sat Feb 12 22:24:14 UTC 2011


Success!  Thank you Anton--everything you said was bang on.  So now I 
can see the disparity map with stereo_view and the point cloud in RViz. 
  Finally I can add a data point to Chris' original problem which is 
that I don't have the same problem--my raw images are fine with nothing 
weird in the lower third of the image.  However, I can also confirm 
Chris' observation that the videre_stereo_cam disparity_view node shows 
only blank windows for both the left and disparity images.  It makes no 
difference if I run the STOC or non-STOC launch files (with 
stereo_image_proc running alongside the non-STOC case).

BTW, I was surprised to see that running the STOC launch file 
(videre.launch) brought the CPU up to 31% whereas running the non-STOC 
launch file along with stereo_image_proc gave a total of only 10% CPU 
load for the pair of processes combined.  Shouldn't I expect less load 
for the STOC situation since the stereo processing is being done on the 
camera?  I'm running all of this on a 7-year-old HP Pavilion with a 
single-core AMD processor.

--patrick

On 02/12/2011 11:18 AM, Antons Rebguns wrote:
> And reading the second part of your email more carefully, I see that
> you already tried running in non-STOC mode :) Left and right shouldn't
> be the same image, there's a slight offset that you should be able to
> see if you put both images side by side. Try running stereo_image_proc
> on those and see if you get proper point cloud.
>
> Anton
>
> On Sat, Feb 12, 2011 at 11:59 AM, Patrick Goebel<patrick at pirobot.org>  wrote:
>> Great suggestion!  I can fire up videre_stereo_cam/launch/videre.launch
>> without error (full startup messages listed below).  However (and
>> perhaps this is related to the problems with smallv and coriander), I
>> can only see the left image.  So running
>>
>> $ rosrun image_view ime_view image:=stereo/left/image_raw
>>
>> gives me an image but
>>
>> $ rosrun image_view ime_view image:=stereo/right/image_raw
>>
>> gives me a blank window.  I get both left and right images in Windows
>> when running smallv.
>>
>> Running rostopic list gives:
>>
>> /diagnostics
>> /rosout
>> /rosout_agg
>> /stereo/disparity
>> /stereo/left/camera_info
>> /stereo/left/image_color
>> /stereo/left/image_color/compressed
>> /stereo/left/image_color/theora
>> /stereo/left/image_mono
>> /stereo/left/image_mono/compressed
>> /stereo/left/image_mono/theora
>> /stereo/left/image_raw
>> /stereo/left/image_raw/compressed
>> /stereo/left/image_raw/theora
>> /stereo/left/image_rect
>> /stereo/left/image_rect/compressed
>> /stereo/left/image_rect/theora
>> /stereo/left/image_rect_color
>> /stereo/left/image_rect_color/compressed
>> /stereo/left/image_rect_color/theora
>> /stereo/points
>> /stereo/points2
>> /stereo/videre_stereo_cam/parameter_descriptions
>> /stereo/videre_stereo_cam/parameter_updates
>>
>> confirming only the left image is being published.
>>
>> So then I tried videre_non_stoc.launch and this time rostopic list shows:
>>
>> /diagnostics
>> /rosout
>> /rosout_agg
>> /stereo/left/camera_info
>> /stereo/left/image_raw
>> /stereo/left/image_raw/compressed
>> /stereo/left/image_raw/theora
>> /stereo/right/camera_info
>> /stereo/right/image_raw
>> /stereo/right/image_raw/compressed
>> /stereo/right/image_raw/theora
>> /stereo/videre_stereo_cam/parameter_descriptions
>> /stereo/videre_stereo_cam/parameter_updates
>>
>> And I get images for both left and right in image_view thought I'm not
>> sure they aren't just the same image(?).
>>
>> --patrick
>>
>> P.S. Here are the startup messages when running videre.launch:
>>
>> started roslaunch server http://pi-ubuntu:33721/
>>
>> SUMMARY
>> ========
>>
>> PARAMETERS
>>   * /stereo/videre_stereo_cam/frame_id
>>   * /stereo/videre_stereo_cam/fps
>>   * /stereo/videre_stereo_cam/exposure_auto
>>   * /stereo/videre_stereo_cam/videre_mode
>>   * /stereo/videre_stereo_cam/gain_auto
>>   * /stereo/videre_stereo_cam/brightness_auto
>>   * /stereo/videre_stereo_cam/convert_to_color
>>
>> NODES
>>    /stereo/
>>      videre_stereo_cam (videre_stereo_cam/videre_stereo_node)
>>
>> ROS_MASTER_URI=http://pi-ubuntu:11311/
>>
>> core service [/rosout] found
>> process[videre_stereo_cam-1]: started with pid [2693]
>> [ INFO] [1297535349.547920863]: Resetting bus
>> [ INFO] [1297535349.550777061]: Initializing camera, turning off ISO
>> [ INFO] [1297535349.620761024]: [dcam] Videre camera, getting local params
>> [ INFO] [1297535349.621693078]: [dcam] Camera firmware: 07.01
>> [ INFO] [1297535349.622254601]: [dcam] Imager firmware: 0008
>> [ INFO] [1297535349.622468767]: [Dcam] Found stereo device
>> [ INFO] [1297535349.623208715]: [dcam] STOC version: 04.02
>> [ INFO] [1297535349.624290434]: [dcam] STOC thresholds: 00010c0a
>> [ INFO] [1297535349.925963168]: [dcam] Calibration, 1975 bytes
>> [ INFO] [1297535349.928050938]: [dcam] Color device
>> [ INFO] [1297535349.928625025]: [dcam] Feature register hi: d2800000
>> [ INFO] [1297535349.929191015]: [dcam] Feature register lo: 00000000
>> [ INFO] [1297535349.933219402]: [Dcam] Exposure min/max: [0,529]
>> [ INFO] [1297535349.939681518]: [Dcam] Gain min/max: [0,48]
>> [ INFO] [1297535349.944065080]: [Dcam] Brightness min/max: [0,255]
>> [ INFO] [1297535349.946369249]: [Dcam] Whitebalance min/max: [0,30]
>>
>>
>> [extractParams] Parameters:
>>
>> [dcam] SVS-type parameters
>> [dcam] Disparity resolution: 1/16 pixel
>> [dcam] Correlation window: 15
>> [dcam] Prefilter window: 9
>> [dcam] Number of disparities: 64
>> [dcam] left camera matrix (K)
>>   508.5466 0.0000 316.0090
>>   0.0000 510.9624 240.5289
>>   0.0000 0.0000 1.0000
>>
>> [dcam] left distortion vector (D)
>>   -0.4300 0.2907 0.0000 0.0000 -0.1297
>>
>> [dcam] left rectification matrix (R)
>>   0.9999 0.0019 -0.0109
>>   -0.0020 1.0000 -0.0031
>>   0.0109 0.0031 0.9999
>>
>> [dcam] left projection matrix (P)
>>   515.0000 0.0000 321.6060 0.0000
>>   0.0000 515.0000 227.1362 0.0000
>>   0.0000 0.0000 1.0000 0.0000
>>
>> [dcam] right camera matrix (K)
>>   511.9488 0.0000 298.7494
>>   0.0000 514.7863 216.4977
>>   0.0000 0.0000 1.0000
>>
>> [dcam] right distortion vector (D)
>>   -0.4172 0.2647 0.0000 0.0000 -0.1200
>>
>> [dcam] right rectification matrix (R)
>>   1.0000 0.0005 -0.0081
>>   -0.0005 1.0000 0.0031
>>   0.0081 -0.0031 1.0000
>>
>> [dcam] right projection matrix (P)
>>   515.0000 0.0000 321.6060 -31.2624
>>   0.0000 515.0000 227.1362 0.0000
>>   0.0000 0.0000 1.0000 0.0000
>>
>> [dcam] Has rectification
>>
>>
>> [dcam] External translation vector
>>   -0.0607 -0.0000 0.0005
>>
>> [dcam] External rotation vector
>>   0.0062 -0.0028 -0.0015
>>
>> [ INFO] [1297535350.228984827]: Connecting to camera with GUID
>> 23930887758951554 [VIDERE_DESIGN MDS-STH]
>> [ INFO] [1297535350.229400314]: Connected camera is a STOC device
>> [ INFO] [1297535350.547844460]: Camera reconfigure request received,
>> level 0xffffffff
>> [ INFO] [1297535350.549813279]: Setting mode to disparity_raw
>> [ INFO] [1297535350.549879176]: Color conversion from Bayer pattern is
>> Enabled
>> [ INFO] [1297535354.483589444]: Stereo camera's frame ID is
>> /stereo_optical_frame
>> [ INFO] [1297535354.483729336]: Setting Exposure to Auto setting
>> [ INFO] [1297535354.483775129]: Setting Gain to Auto setting
>> [ INFO] [1297535354.483817571]: Setting Brightness to Auto setting
>> [ INFO] [1297535354.483859176]: Setting Whitebalance to Auto setting
>> [ INFO] [1297535354.483900501]: Companding mode is Enabled
>> [ INFO] [1297535354.483941547]: High Dynamic Range mode is Disabled
>> [ INFO] [1297535354.634338543]: STOC: uniqueness threshold is set to 36
>> [ INFO] [1297535354.634449116]: STOC: texture threshold is set to 30
>> [ INFO] [1297535354.634493234]: STOC: speckle size is set to 100
>> [ INFO] [1297535354.634535118]: STOC: speckle range is set to 10
>> [ INFO] [1297535354.634576722]: STOC: horopter is set to 0
>> [ INFO] [1297535354.634618327]: -------------------------------------------
>> [ INFO] [1297535354.986294204]: Streaming...
>>
>>
>>
>> On 02/12/2011 10:20 AM, Antons Rebguns wrote:
>>> Patrick,
>>>
>>> You could also try running the ROS driver videre_stereo_cam in
>>> ua-ros-pkg. Just run roslaunch videre_stereo_cam videre.launch to run
>>> the camera in stoc mode. I am not sure it's going to work since
>>> neither coriander nor svs works, but you can give it a shot.
>>>
>>> Anton
>>>
>>> On Sat, Feb 12, 2011 at 11:03 AM, Patrick Goebel<patrick at pirobot.org>    wrote:
>>>> It occurred to me that I have an old digital video camera that uses
>>>> Firewire.  So I installed kino, plugged in the camera to the same
>>>> Firewire port I've been using with the STOC camera and presto, I am able
>>>> to control the camera and capture some video.
>>>>
>>>> So I'm wondering if my problem is not having the Videre driver installed
>>>> correctly.  In fact, I'm not even sure what installing the driver might
>>>> mean beyond what I did in the beginning which was:  I unpacked the
>>>> original SVS tgz file into /home/patrick/bin/svs.  Then:
>>>>
>>>> $ export LD_LIBRARY_PATH=/home/patrick/bin/svs/bin:$LD_LIBRARY_PATH
>>>> $ cd /usr/lib
>>>> $ sudo ln -s libraw1394.so.11.0.1 libraw1394.so.8
>>>> $ sudo ldconfig
>>>>
>>>> Is there something else I need to do to make sure the STOC driver is
>>>> being accessed?
>>>>
>>>> --patrick
>>>>
>>>>
>>>>
>>>> On 02/12/2011 09:10 AM, Patrick Goebel wrote:
>>>>> Many thanks Anton and Jack!  Changing the permissions and group (video)
>>>>> on /dev/raw1394 got me a little further but there is still a problem.
>>>>> Coriander now comes up and shows "VIDERE_DESIGN MDS-STH" under the
>>>>> Camera Select menu but the window is completely unresponsive--clicking
>>>>> on tabs and buttons has no effect.  Typing Ctrl-C in the launching
>>>>> terminal kills the coriander window but does not return the command
>>>>> prompt and coriander is listed as a defunct process.  Also, trying to
>>>>> run smallv simply hangs after issuing the command--no window ever
>>>>> appears and neither Ctrl-C nor 'pkill -9 smallv' in another terminal can
>>>>> kill it...
>>>>>
>>>>> Just to summarize:
>>>>>
>>>>> ls -l /dev/raw1394
>>>>> crwxrwxrwx 1 root video 171, 0 2011-02-12 08:57 /dev/raw1394
>>>>>
>>>>> uid=1000(patrick) gid=1000(patrick)
>>>>> groups=4(adm),6(disk),20(dialout),24(cdrom),44(video),46(plugdev),104(lpadmin),115(admin),120(sambashare),1000(patrick)
>>>>>
>>>>> ls -l /dev/video1394/
>>>>> total 0
>>>>> crwxrwxrwx+ 1 root video 171, 16 2011-02-12 08:57 0
>>>>> crwxrwxrwx+ 1 root video 171, 17 2011-02-12 08:57 1
>>>>>
>>>>> Any other thoughts?
>>>>>
>>>>> --patrick
>>>>>
>>>>>
>>>>> On 02/12/2011 08:46 AM, Antons Rebguns wrote:
>>>>>> What I always have to do is set RW permissions on /dev/raw1394, I
>>>>>> never had to touch /dev/video1394. After that everything usually works
>>>>>> just fine.
>>>>>>
>>>>>> Anton
>>>>>>
>>>>>> On Sat, Feb 12, 2011 at 9:39 AM, Jack O'Quin<jack.oquin at gmail.com>       wrote:
>>>>>>> On Sat, Feb 12, 2011 at 10:18 AM, Patrick Goebel<patrick at pirobot.org>       wrote:
>>>>>>>
>>>>>>>> I made sure I am a member of both the disk and video groups and I did a
>>>>>>>> chmod 777 on dev/video1394/* so that ls -l dev/video1394/* gives:
>>>>>>>>
>>>>>>>> crwxrwxrwx+ 1 root video 171, 16 2011-02-12 07:59 0
>>>>>>>> crwxrwxrwx+ 1 root video 171, 17 2011-02-12 07:59
>>>>>>>
>>>>>>> You probably need to do something similar for /dev/raw1394:
>>>>>>>
>>>>>>>      http://www.ros.org/wiki/camera1394/Troubleshooting#No_Bus_Access_Permissions
>>>>>>> --
>>>>>>>      joq
>>>>>>> _______________________________________________
>>>>>>> ros-users mailing list
>>>>>>> ros-users at code.ros.org
>>>>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>>>>
>>>>>> _______________________________________________
>>>>>> ros-users mailing list
>>>>>> ros-users at code.ros.org
>>>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>> _______________________________________________
>>>>> ros-users mailing list
>>>>> ros-users at code.ros.org
>>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>> _______________________________________________
>>>> ros-users mailing list
>>>> ros-users at code.ros.org
>>>> https://code.ros.org/mailman/listinfo/ros-users
>>>>
>>> _______________________________________________
>>> ros-users mailing list
>>> ros-users at code.ros.org
>>> https://code.ros.org/mailman/listinfo/ros-users
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users



More information about the ros-users mailing list