PCBIdent — Quick User Guide

This tool is still in development, but feel free to help out and submit your PCB pics!

Workflow: upload → rotate & deskew → confirm corners → review component detections → submit PCB → train model.

TO BEGIN TRAINING GO TO THE UPLOAD PAGE

Before you start

  • Take photos with the whole PCB visible and minimal glare. Avoid noisy backgrounds.
  • Include in frame the components that stick out of the board. You can later crop the image in the tool.
  • Top-down horizontally aligned shots are ideal. Slight perspective is OK. The editor can correct it with your assistance.
  • The ident tool will then attempt to identify all important PCB components (IC, ROM, CONN, POT, etc).
  • If you wish, you can mark unindentified PCB components that failed detection, or correct auto-id mistakes.

Step-by-step workflow

  1. Upload
    Click Choose File and select your PCB photo. The image loads into the canvas.
  2. Rotate to align
    Drag on the image to rotate smoothly (or use the ±90° buttons). Align so text on ICs reads upright and the board's long edge is horizontal, then click Next.
  3. Board outline
    Click the four PCB corners (order doesn't matter) to define the outline of the board. If important components stick out beyond this outline, select corners so that those components are included within its perimeter. Click on Submit to continue. The tool will then produce a top-down perspective corrected image of the PCB in the next step.
  4. Review detections
    The editor loads model-detected regions. Fix or add boxes and select classes for each component. Use Delete to remove mistakes.
  5. Train!
    Give this PCB a name and click on the Train button to save the layout as a new PCB model. Training is a time consuming process. It will run periodically to improve the component and PCB detection models.

PCB Component Editor Tips

  • PCB Ident works by building a map of detected PCB components and comparing it to other known PCB layouts.
  • Component detection AI model is good at identifying parts already, and should require only a few corrections each time.
  • Ensure large, unique components are detected correctly. These are strong anchors for identification.
  • Prioritize CPUS, AMPS, ROMS, XTALS, and connectors, less important are ICS and finally large CAPS and large RESISTORS.
  • Ignore small components like 1/4 Watt RESISTORS, as it could cause the model to false id noise.
  • Re-classify incorrect detections. This is important. Incorrect labels will confuse the model in training at make it worse!
  • If unsure what the component is, leave it alone, or if likely wrong, delete it.
  • When drawing regions, make boxes tight to the component to reduce noise in training data.
  • Don't stress out.. An admin will review / approve your submission, and correct it if needed.
  • PCB Ident will improve faster by submitting more PCBs, not by focusing on perfect components identification.

Detected regions appear in red. User-modified regions are yellow. Use the dropdown to change classes, or draw a new box to add components for training.

  • Click a region to edit class
  • Draw missing parts with the mouse
  • Delete selected region to remove

What happens next?

This is how the the submitted information will be used:

  • All images (initial, rotated, perspective corrected) are saved to the server for future use.
  • All training submissions will be aproved by an administrator to ensure correctness.
  • Images submitted will later be used for enhanced training (auto perspective and auto rotation) and for full PCB identification.
  • The component detection model will be retrained periodically with new submission data to improve component identification.
  • The PCB identification model will be retrained more often with new data to improve PCB identification.
  • Incorrect PCB / component identifications will be manually corrected by admins.
  • This process repeats until the model accuracy reaches close to 100%.