Further Optimization suggestion for wireless openni streaming
Let me first describe the system that I've came up with..
I have two Odroid-U3 with Asus Xtion Pro Live and Wifi. Both of them run the
roslaunch openni2_launch openni2.launch
with the video resolution changed from VGA to QVGA...
The base station system (my computer) decompresses
/cameraX/depth_registered/image_raw (compressedDepth)
/cameraX/rgb/image_color_rect (compressed)
and synchronizes
/cameraX/rgb/image_rect_color_unsync (decompressed)
/cameraX/depth_registered/image_raw_unsync (decompressed)
/cameraX/rgb/camera_info
and advertises
/cameraX/rgb/image_rect_color_sync
/cameraX/depth_registered/image_raw_sync
/cameraX/rgb/camera_info_sync
which the rgbdslam node subscribes to; where X may be 1 or 2.
They are both connected to a wireless N-lite router which bandwidth may reach upto 150 Mbps.
Using Wifi Analyzer Android App, it detected no other wifi signal in the same channel as the current wifi network.
Result: It is somewhat smooth but there are times when it drop frames. Running only one openni2 streaming do not really drop frames.. I therefore concluded that it was due to wifi bandwidth.
The further optimization that I can think of are..
1.) Instead of transmitting colored images, transmit only grayscale images.
2.) Rethrottle frame rate around 15fps only.
Questions..
1.) What are other optimization suggestions I can do?
2.) running openni2_launch openni2.launch does not advertise grayscale image. What ros parameter should I include in the openni2.launch in order to generate /camera/rgb/image_rect_mono?? Because running imgproc node DO generate image_rect_mono
3.) Using dynamic reconfigure, the openni camera can only be rethrottled to 30 fps.. I tried 25 fps but it did not work. How do I rethrottle it to 15fps?
EDIT: I tried running the dynamic reconfigure and set to data skip to 1. I assume this means it will publish 1 in every 1 frame. It should mean no difference. However, it seems after setting data skip to 1, the frame rate starts to decline and wants to approach zero.
When data skip is set to 0
When data skip is set to 1
(/upfiles/14062739298942344.png)
as of 15:39, the frame rate is 16.559 and still keeps on decreasing.
I was trying to run rgbdslam over multiple machines, but the speed of mapping is very slow ,Have you solve this problem?Can you advertise some advice?Thanks in advance.