Hi all! First post here and first attempt to contribute so please advise if I should be posting elsewhere. I’m an MIT graduate and co-founder of a robotics startup in Palo Alto.
One of the problems I have had is that often one wants to simply visualize the output of various sensor message topics without having to fire up some complex visualization tool to answer simple questions such as whether a LIDAR is functioning or whether a camera is saturating. In many cases one simply wants to do this over ssh.
I created a tool to visualize LaserScan, Image, and NavSatFix topics using Unicode/ASCII art. PointCloud2 supported as well but no rotation of the view yet. Currently very pre-alpha and hacky. Would welcome advice on the best way to structure this, and contributions!
@awesomebytes Good idea! Will work on that but probably not free until next week; if you want to take a stab at converting it to a package in the next few days let me know!
@NikolausDemmel Thanks for the feedback! I used a package I made called python-termgraphics (github.com/dheera/python-termgraphics) for drawing, and I targeted dual Python2/3 compatibility with that. I guess I just need to make the ROS part with dual compatibility. Is there any reason ROS is using Python 2 as the default still? (I use Python 3 for most of my robot code for future-proofing especially with TensorFlow and other new packages pushing for Python 3 support first.)
Another option I was considering is to eventually just port the whole thing to C++ (especially useful for people who may run the image viewer on RPis or other embedded hardware).
I think it is mostly the vast amount of legacy code and also target platform support / defaults. I believe python 3.5 and up compatibility is strongly encouraged for recent ROS distros but python 2.7 is still the default.
ROS 2 is already Python 3 only, so it is worth making/keeping your Python software in a condition where it can be executed on both Python 2 and Python 3.