On Wed, Mar 10, 2010 at 9:29 AM, Rosen Diankov wrote: > > I'm sorry you've been having so many problems with cameradc1394, > perhaps we can come up with a solution that will work well for you. Thanks, Rosen. I do not mean to come across as harshly critical of cameradc1394. I appreciate the work that has gone into it, and want to make it more accessible to users. We are trying to get undergraduates working productively with ROS vision components. Many of them are unfamiliar with both ROS and Linux. They will have a lot more trouble getting this working than I did. > - You say it seems to work but not easy to install? Typing 'rosmake > cameradc1394'  should make and install everything for you, so are you > having trouble compiling things? I did get it to work. It just took me a couple of hours. See below... > - i think the libdc1394v2 package is for systems that do not have > libdc1394 version 2 installed, otherwise the library itself should be > stable. On a recent boxturtle ROS install, the rosmake will fail because cameradc1394 depends on libdc1394v2, which is no longer being distributed. So, users either have to edit your manifest.xml to remove that dependency (which is still needed on Ubuntu Hardy), or they have to find and install the SVN repository for the camera_drivers_experimental package (doable, but not trivial). > - cameradc1394 links the the ROS image libraries in order to > serialize/convert the message correctly, display the image, and > undistort it (radial distortion). You can disable the display > dynamically, so the the only other place where opencv would be used is > for undistortion and sending messages. Fortunately, both of these are > not that heavy on computation, so your system should handle it. I am not particularly worried about computational overhead. It's more a question of system design and consistency. The other ROS camera drivers do not depend on opencv2. There are higher-level packages, such as image_view for that sort of function. I'd prefer a simple DC1394 driver that behaves like the other ROS camera packages. That way people can work consistently with all those devices. > - i'm pretty sure the svn checkout command on sourceforge points to > the correct code: > svn co https://cmu-ros-pkg.svn.sourceforge.net/svnroot/cmu-ros-pkg cmu-ros-pkg > > The 'trunk' folder might be making things a little confusing for you, > therefore i recommend: > > svn co https://cmu-ros-pkg.svn.sourceforge.net/svnroot/cmu-ros-pkg/trunk > cmu-ros-pkg As you say, that is the correct URL for checkout. This error is currently not important, because you have no other branches (so far). But, you would not want users accidentally checking out *all* the branches instead of just the mainline version. When there is a stable version, they should check out branches/latest, instead, I suppose. > - There is a link on the ros.org camera_drivers webpage > (http://www.ros.org/wiki/camera_drivers) into the correct wiki > location where the cameradc1394 webpage is stored. I'm not sure why > you feel it is hard to locate..... It would be easier to find under http://ros.org/wiki/cameradc1394 (which does not exist). It was hard to find because the SourceForge page for cmu-ros-pkg does not point to it. I did eventually find a pointer to it at the bottom of http://ros.org/wiki/libdc1394v2 (which does exist). > - the README in the top source directory was old and contained nothing > useful, i just deleted it Good idea, thanks. > - I think you are the first person that has expressed dissatisfaction > with the way cameradc1394 is structured (no code reviews, etc), I've > tried to stick with the camera API willowgarage publishes as much as > possible. In the past year, it has been hard to keep up with it due to > many changes, but we're actively maintaining cameradc1394. For > example, I just noticed that the API requires a "set_camera_info" and > "request_image" services, which we will add as soon as we have time. I fully understand the difficulty of tracking rapidly changing interfaces in a complex system. That is why I favor better integration into the ROS development process. I believe a design review would have identified the inconsistencies between cameradc1394 and the other ROS camera drivers. A good review might have caught the set_camera_info change, as well. I have so far been unable to display 1394 camera images with rviz. That may be the reason. > If it makes a big difference for your team that the cameradc1394 > resided on WillowGarage's servers rather than sourceforge's, then I'm > sure WillowGarage would be happy to host it. I expect they would. I don't see the repo location as a problem right now (as long as the checkout URL is correct and up to date). I believe including good documentation into the ros.org wiki would make the package much more accessible to beginning users. I am willing to assist, if you feel that would be helpful. I don't know much about digital cameras, but I do know how to edit the wiki. :-) Regards, -- joq