DeanLonergan / PCB_Analyser

A printed circuit board analysis program.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Printed Circuit Board Analyser

I designed this program during my fourth semester of college for Data Structures & Algorithms 2. The goal was to create a program that can load user-selected images of circuit boards and search them for components. The search should be based on the user’s required parameters and should highlight each present component upon completion. The program should then present the user with relevant data regarding the search (number of components present, component size, etc.).

Loading in images

  • Open Image: Opens the file browser, simply navigate to the image you wish to analyse and open it
  • Close Image: Closes the image but does not close the program
  • Exit: Closes the program

PCB open image

Note: Only .jpg and .png images can be opened.

Image Manipulation

  • Details: Opens a window containing the detailed information about image file that has been loaded
  • Grayscale: Converts the image to black and white
  • Colour Adjustment: Allows adjustment of the Hue, Saturation, and Brightness of the image
  • Colour Channels: Opens a window showing the Red, Green, and Blue channels of the image
  • Undo Changes: Undo’s all changes made to the image

Image Manipulation

Image Analysis

  • Parameters: This is how the search parameters are set
    • Select the component you want to search for (Resistor, Capacitor, Chip)
    • Select the target colour of this component (click on the component in the image)
    • Select the colour distance (the larger the distance, the less like the original colour each pixel can be)
    • Select the max component size (small generally works best for resistors, large for chips)
    • Search until you are happy with the result (searching multiple times generally helps)
    • Set the parameters, saves the pixel table generated, and closes the window
  • Analyse: Converts the image to black and white
    • User the parameters set by the user to search the image for components
    • Found components are highlighted on the primary image
    • Details about the search are presented in another window (number of components found, largest and smallest components by pixels)
  • Visualize: Allows adjustment of the Hue, Saturation, and Brightness of the image
    • Visualizes the pixel maps generated by the search parameters
    • Each component can be coloured black and white, random colours, or the colour selected by the user

PCB Analysis

Appendix

I have included a number of sample images inside of the repo, they can be found here:

tempsnip

It should be noted that images do not need to be located in this folder to be opened, nor do they need to have a specific name or resolution. When loaded in all images will be adjusted to size of 512x512. This folder can be deleted with no effect on the functionality of the program.

About

A printed circuit board analysis program.


Languages

Language:Java 100.0%