File size: 1,335 Bytes
21ee677
 
 
 
 
 
 
 
 
2c44c40
21ee677
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
---

title: PCB Image2Schematic
emoji: πŸ”Œ
colorFrom: green
colorTo: blue
sdk: gradio
sdk_version: 4.44.1
app_file: app.py
pinned: false
python_version: "3.11"
---


# πŸ”Œ PCB Image β†’ Schematic

Convert a PCB photo into a KiCAD schematic automatically using AI.

## Pipeline
1. **Component Detection** β€” YOLOv8 via Roboflow API detects resistors, capacitors, ICs etc.
2. **IC Text Reading** β€” EasyOCR reads part numbers from chip silkscreen
3. **Netlist Generation** β€” OpenCV trace following + proximity detection finds connections
4. **KiCAD Output** β€” Generates `.kicad_sch` file ready to open in KiCAD

## Local Setup
```bash

git clone https://github.com/sanjay-r123/pcb-image2schematic

cd pcb-image2schematic

python -m venv venv

venv\Scripts\activate

pip install -r requirements.txt

python app.py

```
Then open http://localhost:7860

## Run Individual Stages
```bash

python detector.py     "your_pcb.jpg"

python ocr.py          "your_pcb.jpg"          "your_pcb_results.json"

python netlist.py      "your_pcb.jpg"          "your_pcb_results_ocr.json"

python kicad_writer.py "your_pcb_netlist.json"

```

## Tech Stack
- Roboflow YOLOv8 β€” component detection
- EasyOCR β€” IC text reading  
- OpenCV β€” trace detection
- KiCAD format β€” schematic output
- Gradio β€” web UI