270 likes | 429 Views
Nathan Bossart, Joe Mayer, Bob Urberger. Advanced Cubesat Imaging. RASCAL ACIP. Team Introduction. http://acip.us Facilitator: Bob Urberger Computer Engineering majors Space Systems Research Lab. RASCAL Mission.
E N D
Nathan Bossart, Joe Mayer, Bob Urberger Advanced Cubesat Imaging RASCAL ACIP
Team Introduction • http://acip.us • Facilitator: Bob Urberger • Computer Engineering majors • Space Systems Research Lab
RASCAL Mission • “Rascal is a two-spacecraft mission to demonstrate key technologies for proximity operations…” • “After the on-orbit checkout, one 3U spacecraft is released and passively drifts away.... After a suitable distance, the released spacecraft will activate its propulsion system and return to within a few meters of the base. The second spacecraft will be released and the process repeated...” RASCAL ACIP
Imaging Payload • Awareness of Cubesat Environment • Computer Vision • Low-Level Processing • Object Detection • Distance Determination • High-Level Data • Navigation • Thruster Control RASCAL ACIP
Functional Breakdown Unique Face Identifier Known Pattern Capture Images Raw Data Transfer Data Structured Data Process Images High-Level Data Output/Store Control Data RASCAL ACIP
Modules LEDs Unique Face Identification Camera Capture Images Transfer Data Computational Hardware Process Images Output/Store Control Data RASCAL ACIP
LEDs • Required to perform classification • Not enough detail visible for other features • Three approaches • Unique pattern of LEDs for each face • Unique combination of colors for each face • Both unique patterns and colors • Unique pattern works regardless of camera spectrum • Fails when face partially visible • Color combinations only work with visible spectrum cameras • Can classify cube corners as well as faces with well chosen color patterns RASCAL ACIP
Camera • Potential Camera Choices: • FLIR Tau 640 • 640x480, 14-bit • Visible spectrum image sensor • 2-5MP - 16 to 24 bit color • Parallel data output from cameras • Component Requirements: • FLIR • PCB integration • Control signaling simple • Low resolution, monochromatic • 16.1 MB/s input data rate @ 30Hz • Visible spectrum • Requires lens fixture • Complex control signaling • High resolution, wide color range • 2MP with 24 bit color: • 57.6 MB/s input data rate @ 30Hz RASCAL ACIP
Processing Hardware • Processing blocks in hardware • Caching and system control managed in software • Timing and Gate Consumption • Alternatives: • Pure software implementation • Pure hardware implementation RASCAL ACIP
Imaging Functions Image Processing Distance Data Distance Detection Image Data Structure Objects In Frame Pre- Processing Object Detection Object Classification Image Edges RASCAL ACIP
Preprocessing • Noise suppression • Color Conversion • Object enhancement • Image segmentation • Conversion and downsampling RASCAL ACIP
Distance Detection • Identify depth from a single image • Monocular Cues • Relative size • Comparison of imaged objects to known shape scale at particular depth • Structured geometry identified should beeasy to identify scale • regular structure • Square or equilateral triangle RASCAL ACIP
Distance Detection in RASCAL • Square LED pattern on spacecraft face • Critical point identification • Homography estimation • Projective transform • Point correspondence for scale • Hardware Domain • Parallel matrix multiplication RASCAL ACIP
Object Detection • Identifying Objects in an Image • Region or Contour Based • Edge Detection • Relies heavily on Pre-processing (Columbia University) RASCAL ACIP
Object Detection in RASCAL • Hardware Domain • Canny/Deriche • Sobel Operator • Constraints • Cubesat size • Environmental • Resolution (Columbia University) RASCAL ACIP
Objection Classification • Post-object detection / image segmentation • Support vector machine (metric space classification) • Assign a class based upon pre-programmed control data RASCAL ACIP
Object Classification in RASCAL • Completed with bare-metal software • ARM Assembly / C • Minimum distance principle (efficient) • Multi-tiered and/or multi-dimensional space from attributes given • Determine a number of attributes with significant differences between faces • Testing: expect a very high level (>95%) of correct classifications RASCAL ACIP
Constraints of Object Classification • Must work with a variety of backgrounds (Earth, Moon, Sun, Space, etc.) • Ideally real time (bounded) and low latency • Updated at >=10 Hz • Must function with different sizes (patterns can vary from a few pels to larger than the frame) • Definitive discrimination functions with high reliability • Alternative algorithm: neural nets, fuzzy logic
Output to Control • System will output calculated information about placement, attitude, distance, etc. • In the future, a separate team will construct a system to interpret data and convert to control signals/data • Since this is out of the scope of our project, the output format/setup is ultimately our choice RASCAL ACIP
Functional Testing • Output Unique Pattern • Capture Images • Stream Images • Verify Control Signals • Transfer Data • Oscilloscope • Frame Buffer • Process Image • Software Verification • Hardware Verification • Output/Store Data • Buffer RASCAL ACIP
System Testing • Camera integration • Hardware timing constraints • Block connectivity verification • Blocks signal each other as intended • Full pipeline simulation • Blocks interact as expected • Physical synthesis testing • Data produced from each frame RASCAL ACIP
Timeline RASCAL ACIP
Estimated Costs • Designed for very low budget and small amount of needed materials • Largely out of SSRL funding RASCAL ACIP
Future Work for Integration • Thruster control system • Placement into spacecraft • Radiation, vibration, space-readiness • We will provide thorough documentation for future groups RASCAL ACIP
Bibliography • http://cubesat.slu.edu/AstroLab/SLU-03__Rascal.html • Jan Erik Solem, Programming Computer Vision with Python. Creative Commons. • Dr. Ebel, Conversation • Dr. Fritts, Conversation • Dr. Mitchell, Conversation • Milan Sonka, Vaclav Hlavac, Roger Boyle, Image Processing, Analysis, and Machine Vision. CengageLearning; 3rd edition. • http://www.cs.columbia.edu/~jebara/htmlpapers/UTHESIS/node14.html RASCAL ACIP
Questions? RASCAL ACIP