A Robot powered by a Raspberry Pi, is built and used as a dynamic moving projector for Appearance Editing work.
This was developed at the CGVLab at Purdue University for ongoing Appearance Editing research.
Vision and reflection on Mining Software Repositories research in 2024
Robotic Platform for Appearance Editing
1. Robotic Platform for Appearance
Editing
C. D. Tharindu Mathew
Advisor: Prof. Daniel Aliaga
2. Appearance Editing
● Illuminate an object using digital projectors, so that its
appearance is visually altered
Source: http://wiki.cs.purdue.edu/cgvlab/doku.php?id=projects:virtual_restoration
3. Setup Details - Robots
Wheeled mobile robots equipped with
● Raspberry Pi with HDMI output and wifi dongle
● Micro Projector
● Infrared LED pattern on top
● Control circuit to drive motors
4. Setup Details - Control Table
● Table with checkerboard pattern
● Overhead camera with infrared filter
5. Setup Details - Control Program
● Receives input from overhead camera
● Issues commands and pose information to robots
● Calibration of camera and projector
6. Contribution
● Robots, Control table - Luis Rodrigo, Control Program -
Prof. Aliaga
● Robot control program existed, written in Python
● Re-wrote the robot control program in a more structured
manner with reliable execution
7. wiringPi
● C Library that allows to control GPIO pins
● Allows to generate software based PWM signals
● High performance in benchmarks - Possible to generate
6.9 MHz signal
Source: http://codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/
8. Development Environment
● Raspberry Pi runs Raspbian 32-bit
● Eclipse allows to configure different compilers
● Windows Batch script to deploy into robots
9. Initial Attempt
● Wrote a control loop that does the following:
o Rotate towards destination point
o Move at constant speed for 2s
o Repeat
10. Video - Initial Attempt
https://www.youtube.com/watch?v=iLXbehabnwY
15. Video - Attempt after integration of PID Controller
https://www.youtube.com/watch?v=iLXbehabnwY
16. Velocity cut offs
● Maximum velocity operates at 30%
● Minimum velocity is 10%
● Ratio between vl and vr are considered when one value
hits maximum
17. Tuning the PID Controller
● To accommodate the table size, more rotation is
needed compared to translation
● Use 66x more Kp and Ki values for output ϴ (0.3 vs 200)
18. Video 3 - Tuned PID Controller
https://www.youtube.com/watch?v=RjGPhbkbHsQ
19. Projector Calibration
● Uses overhead camera to calibrate Projector using
Tsai’s method
● Then, create image to project based on the
image→world coordinates