Skip to content

Architected Material Lab: Multiclassification for 3D Printing Error Detection

Notifications You must be signed in to change notification settings

yuhanliu-tech/aml_multiclassification

Repository files navigation

Architected Material Lab: Multiclassification for 3D Printing Error Detection

UPenn Summer 2023 PURM Project

High-Level Project Breakdown

Research Expo Poster and Abstract

File Documentation

Processed Data (5 buckets)

Folder holding data to be used as training and test examples. Folder inside named "Combined" has labeled data images whose pixels can be converted into numbers for CSV. Github has been a bit finnicky with image files so it might be incomplete?

Documentation for code and algorithmic approaches, as well as instructions to run, can be found in their respective Jupyter notebooks.

Error Detection (Five Classes)

Folder with the main files for single-stroke five class error detection.

  • Evaluate Model Tests

Folder with excel files detailing experiments to text robustness of error detectio scripts.

  • Create CSV.ipynb

Output CSV files for training and test images that will feed into model training script.

  • Create Random Test-Training Sets.ipynb

Randomly assign subsets of a data folder for training and test examples.

  • Live-Predictions (5 classes) Collect Data.ipynb

Printer script used to collect data (no predictions, printer reactions, etc)

  • Live-Predictions (5 classes) with Multithreading, Trials, Random Error.ipynb

Error detection script designed to introduce random errors and detect them. Introducable errors currently limited to nozzle height.

  • Live-Predictions (5 classes).ipynb

Connect camera to printer to make live predictions. (Older file)

  • Load Multiclassification Model.ipynb

Load in selected model for manually-uploaded predictions. (One image at a time)

  • Multiclassification (5 Buckets Different Error Types).ipynb

Machine learning training script designed to output an h5 file that recognizes 5 error types (nozzle height too low/high, pressure too low/high, normal)

  • test_fiveclass.csv / training_fiveclass.csv

CSV files that feed into Multiclassification (5 Buckets Different Error Types).ipynb.

Error Detection (Layer One)

Slightly modified copies of files from Error Detection (Five Classes) designed to recognize errors when printing in layers (as opposed to single stroke). Never optimized, definitely overfitting. Folders with training data are marked.

Printer GUI.ipynb

M2PCS G-Code Control Script used to control the Makergear M2 Pneumatic Control System. Use to connect to and re-home the printer before running printing scripts.

printer_camera_capture.ipynb

Python script used to display live feed from the camera. Use to ensure that Jupyter can access the camera.

About

Architected Material Lab: Multiclassification for 3D Printing Error Detection

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published