logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

MES Mariusz 10 Wrz 2017 00:52 2841 17
REKLAMA
  • #1 16690867
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    Witam.

    Szukam sposobu na najlepsze możliwe obrobienie skanu PCB, np.

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    celem uzyskania idealnej bitmapy 2 kolorowej.

    Efekty, które uzyskuję, pozwalają co prawda na odtworzenie prostego projektu (duże ścieżki, duże komponenty, duży kontrast ścieżka-PCB) na podstawie skanu PCB, niemniej grafika sama w sobie daleka jest od ideału:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Umie ktoś z Kolegów prostym sposobem doprowadzić kolorowy skan PCB (.jpg) do dwukolorowego ideału (całkowite usunięcie "kaszy", wyraźne kontury, proste linie), i podpowie, jak to zobić ?
  • REKLAMA
  • #2 16690889
    BogdanGut
    Poziom 9  
    Posty: 22
    Pomógł: 1
    Ocena: 5
    Witam,
    no to się nie da tak. Ścieżki są ponadtrawiane, Jak można uzyskac ich krawędzie? Pół minuty w Faststone dało mi taki efekt:
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Wyostrzanie i dobór krzywych. Pewnie można by lepiej to dopasować, ale nie wiem. Co rozumiesz pod słowem "ideał".
  • REKLAMA
  • #3 16690893
    Ture11
    Poziom 39  
    Posty: 5408
    Pomógł: 573
    Ocena: 1116
    Hmm, przy tak małej i prostej płytce wydaje mi się, że więcej czasu zajęło koledze napisanie pytania na elektrodę, niż gdyby kolega wziął GIMP-a, umieścił zdjęcie płytki jako tło, a na nowej warstwie odrysował ścieżki i otwory - po czym oczywiście, usunął tło.
  • #4 16690916
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    Ture11 napisał:
    Hmm, przy tak małej i prostej płytce wydaje mi się, że...

    To tylko przykład. Tego typu płytki (szerokie ścieżki, duże komponenty), jak widać wyżej, nie stanowią wielkich problemów.
    Ja przede wszystkim szukam metody, która da możliwie najlepsze efekty (lepsze od tych, które zaprezentowałem wyżej).
    Na początku myślałem, że zmiana palety na 16 kolorową rozwiąże problem (usunę ziarno), jednak okazało się, że to wcale nie takie proste (ziarno zostaje nawet przy kilku kolorach).

    Przydałoby się jakieś inteligentniejsze narzędzie. Takie które usunie ziarno, wyprostuje linie (np. doda brakujące piksele wg jakichś bardziej inteligentnych algorytmów). Przydałby się soft z szeregiem inteligentnych algorytmów, które pozwoliłyby na renowację i rekonstrukcję tego typu grafik.
  • REKLAMA
  • #5 16691048
    kred
    Poziom 20  
    Posty: 269
    Pomógł: 30
    Ocena: 18
    Możesz spróbować zwektoryzować bitmapę. Chyba inkscape ma taką możliwość.

    Edit: pobawiłem się w gimpie (mikser kanałow do cz-b - usunąłem kolor z kanału niebieskiego co zwiększyło czytelność płytki), poziomy, kontrast w celu zwiększenia czytelności. Otworzyłem plik w inkscape, PPM->wektoryzuj bitmapę. Takie coś wyszło (po lewej bitmapa, po prawej wektor):
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Dodatkowo załączam wygenerowany svg. Wygląda nieźle, a jeszcze może być sporo do ulepszenia.
    Załączniki:
    • plytka.7z (56.83 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 16693845
    jaro124
    Poziom 2  
    Posty: 4
    Witam, próbowałem to zrobić tak jak to opisałeś lecz nie mogę osiągnąć tego efektu, czy mógłbyś proszę pokazać to obrazkowo krok po kroku? będę bardzo wdzięczny
  • Pomocny post
    #7 16694055
    kred
    Poziom 20  
    Posty: 269
    Pomógł: 30
    Ocena: 18
    jaro124 napisał:
    Witam, próbowałem to zrobić tak jak to opisałeś lecz nie mogę osiągnąć tego efektu, czy mógłbyś proszę pokazać to obrazkowo krok po kroku? będę bardzo wdzięczny

    Proszę:
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Nie ma jednego sposobu, trzeba bawić się i sprawdzać różne opcje i suwaczki.
  • #8 16694227
    jaro124
    Poziom 2  
    Posty: 4
    Wielkie dzięki za odpowiedź :-) zaraz będę dziergał dalej :-)
  • #9 16694280
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    Ta wektoryzacja jest mega. Wszystkie wcześniej poszarpane, rozwalone krawędzie ścieżek stają się niemal ideałem. Normalnie rewelacja!
    Też muszę to przećwiczyć. Tylko coś tego miksera kolorów znaleźć nie mogę:

    Chwila, ale ty to robisz w Gimpie czy w Inkscape? Po piszesz, że w Gimpie, a widzę obrazki z Inkscape ?

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
  • Pomocny post
    #10 16694657
    kred
    Poziom 20  
    Posty: 269
    Pomógł: 30
    Ocena: 18
    MES Mariusz napisał:
    Ta wektoryzacja jest mega. Wszystkie wcześniej poszarpane, rozwalone krawędzie ścieżek stają się niemal ideałem. Normalnie rewelacja!
    Też muszę to przećwiczyć. Tylko coś tego miksera kolorów znaleźć nie mogę:

    Chwila, ale ty to robisz w Gimpie czy w Inkscape? Po piszesz, że w Gimpie, a widzę obrazki z Inkscape ?

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej


    Najpierw w gimpie poprawiam kontrast a potem wektoryzuję bitmapę w inkscape. Mikser kanałów w gimpie jest pod PPM->Kolory->Składowe.
  • #11 16694967
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    kred napisał:
    Najpierw w gimpie poprawiam kontrast a potem wektoryzuję bitmapę w inkscape. Mikser kanałów w gimpie jest pod PPM->Kolory->Składowe.


    Ok. Wreszcie znalazłem :-)

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej
  • #12 16698015
    jaro124
    Poziom 2  
    Posty: 4
    Witajcie, dobre! ale... mam pytanie:

    jak taką grafikę wrzucić do programu do edycji PCB (np. KiCad, Eagle)??

    Pozdrawiam
  • #13 16698155
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #14 16698224
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    W KiCad-zie można to zrobić stosunkowo prostu. Z pomocą przychodzi konwerter bitmap do komponentu:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Wystarczy więc wziąć skan PCB, np:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    I zaczytać go do konwertera. Ważne by wpisać poprawną rozdzielczość obrazka, celem uzyskania rzeczywistych wymiarów po imporcie do PCBnew.

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Powstałą w ten sposób bibliotekę komponentu (szkic płytki w formie komponentu), czyli utworzony wcześniej plik, nazwany przykładowo bbv8_top.kicad_mod umieszczamy w jakimś folderze-bibliotece, np. d:\Mariusz\Zapisane\KiCad\Biblioteki\PCB_scanned.pretty\bbv8_top.kicad_mod

    Teraz tę bibliotekę dodajemy do projektu:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Stworzyliśmy element biblioteczny, dołączyliśmy bibliotekę do projektu, możemy jej więc użyć:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Mozaikę ścieżek mamy już w KiCad PCBnew, i możemy rozkłądać komponenty, trasować ścieżki wg wzoru.

    Pokażę jeszcze tylko, że mamy również poprawną skalę:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Widać więc, że w KiCadzie sprawa jest prosta, wręcz banalna.

    Gorzej z innymi, popularnymi EDA (widać, że darmowy KiCad potrafi bić na głowę rozwiązania komercyjne, za które w dodatku musielibyśmy słono zapłacić). W ich przypadku najpopularniejszym formatem wymiany danych rysunkowych jest .dxf. Ale jak przekonwertować skan płytki do prostych linii formatu .dxf? Wałkowaliśmy to razem w tym temacie. Wałkowaliśmy, wałkowaliśmy, i wywałkowaliśmy!

    Przede wszystkim musimy przygotować bliską ideałowi, czarnobiałą bitmapę. Proponuję użyć GIMP-a. Zatem zaczytujemy nasz skan a następnie zmieniamy tryb 3 kolorowy (przejście od razu do 2 kolorów daje bardzo kiepski efekt).

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Po tym kroku pozbywamy się zbędnego już, trzeciego koloru:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Po zaznaczeniu trzeciego koloru, usuwamy go za pomocą klawisza del:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Następnie ustawiamy tryb RGB, po to by za chwilę znów zmienić tryb, również indeksowany, ale tym razem 2 kolorowy (1-bitowy, czarno-biały):

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Tak spreparowany obraz zapisujemy jako bitmapę:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Tak przygotowaną bitmapę otwieramy w celu dalszej obróbki, tym razem w Inkscape:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Następnie ustawiamy poprawne rozmiary grafiki:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Po przeskalowaniu możemy zwektoryzować bitmapę:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Następnie zaznaczyć bitmapę:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Oraz połączyć wszystko liniami:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Na koniec eksportujemy do formatu .dxf:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Grafikę w formacie .dxf możemy już łatwo zaimportować do dowolnego oprogramowania EDA (w tym również do KiCad-a):

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Jeśli ktoś wpadnie na pomysł, jak zredukować liczbę kroków (a osiągnąć ten sam efekt), albo zredukować metodę z użycia dwóch narzędzi (GIMP + Inkscape) to pojedynczego narzędzia (Inkscape?) - dajcie znać proszę. Dziękuję :-)

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Miłej zabawy w rozkładanie komponentów i trasowanie ścieżek po wzorze :-)
  • Pomocny post
    #15 16698382
    Konto nie istnieje
    Konto nie istnieje  
  • #16 16698970
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    Christophorus napisał:
    W programie DipTrace odtwarzanie płytki z obrazka jest chyba jeszcze prostsze. Można bezpośrednio wstawić obraz graficzny (rysunek płytki) na planszę projektową. Wyskalować płytkę i rozpocząć odtwarzanie rysunku jej ścieżek.


    Dziękuję pięknie za tę informację. Jestem multisoftware-owy, więc z przyjemnością zapoznam się z tematem.


    Wracając jeszcze do tematu (jako, że apetyt rośnie w miarę jedzenia):

    - Przydałby się soft, który zaczytałby .jpeg-a i wypluł .dxf-a (mega wygoda, oszczędność czasu, poprawne i powtarzalne wyniki). Gdyby cały temat udało się ogarniać w jednym narzędziu, może udałoby się napisać skrypt / makro automatyzujące wszystkie czynności. "Mój sposób" (redukcja jpg-a do 3 kolorów, i usunięcie tego trzeciego, następnie konwersja do palety 1-bitowej, czarno białej, dalej wektoryzacja, łączenie liniami i eksport do .dxf) wydaje się w 100% powtarzalny, więc nadzieja jest. Być może nawet istnieje dedykowany software, więc jak ktoś zna, niech rzuci nazwę.

    - Jeśli na serio chcemy zacząć bawić się w inżynierię wsteczną (wskrzeszać stare projekty) warto rozejrzeć się za takim softem EDA, który wspiera tzw. back annotation netlisty, czyli przesłanie netlisty z PCB do schematu (czyli na odwrót w stosunku do tego, co robi się zazwyczaj). Back annotation dostępne jest na pewno w narzędziach Mentor Graphics Pads (komercyjny) oraz Design Spark (legalny klon Easy-PC z ograniczeniami). W KiCad-zie raczej (chyba) go nie uświadczymy. Po pierwsze dlatego, że KiCad (a konkretnie komponent Pcbnew) potrafi jedynie zaczytywać netlistę, z kolei komponent schematowy (Eeschema) potrafi ją tylko generować. Ponadto KiCad ma domyślnie niezwiązane symbole schematowe i footprinty PCB (a trudno byłoby odtworzyć schemat, jeśli z footprintem nie jeste skojarzony symbol schematowy). Nie wiem, jak jest w Deep Trace. Inna sprawa, że nawet na podstawie gołych Gerberów można sobie wygenerować w pełni funkcjonalną netlistę (na pewno da się to zrobić przy użyciu oprogramowania od Nummerical Innovations, a konkretnie przy użyciu softu FAB3000). Wspomniałem o tym, ponieważ merytorycznie wskoczyliśmy dosyć głęboko w tzw. "Backward Ingeneering", i jeśli traktować to poważnie, przydałaby się możliwość odtworzenia schematu na podstawie płytki. Importując grafikę PCB, do softu EDA, rozmieszczając na niej komponenty, trasując ścieżki, tworzymy (świadomie bądź nie) netlistę, którą teoretycznie da się później zaimportować do schematu.(odtworzenie schematu będzie teoretycznie polegało na zaimportowaniu netlisty i manualnym rozmieszczeniu komponentów, które będą już połączone).
  • Pomocny post
    #17 16699047
    Konto nie istnieje
    Konto nie istnieje  
  • #18 19358764
    MES Mariusz
    Poziom 36  
    Posty: 5452
    Pomógł: 8
    Ocena: 222
    Uwaga :-)

    Proponuję nowy, dużo lepszy sposób :-)

    Z pomocą przychodzi Inkscape, ale tym razem inaczej:

    1. Importujemy skan PCB do Inkscape
    2. Dodajemy nową warstwę
    3. Na nowej warstwie narzędziem do rysowania prostych (od)rysujemy wszystkie ścieżki

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    4. Wyłączamy warstwę zawierającą zeskanowaną płytkę, zostają odrysowane ścieżki.

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    5. Eksportujemy do formatu .dxf

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    6. Importujemy .dxf do pcbnew, metodą prób i błędów ustawiając skalę odpowiadającą rzeczywistości:

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    7. Teraz już tylko pozostaje uzupełnienie schematu, eksport netlisty i minuta na rozmieszczenie komponentów i odrysowanie ścieżek.

    Obróbka zdjęcia PCB celem uzyskania idealnej BMP 2 kolorowej

    Wuala :-D

Podsumowanie tematu

✨ W dyskusji poruszono temat obróbki skanów PCB w celu uzyskania idealnej bitmapy dwukolorowej. Użytkownicy dzielili się różnymi metodami, w tym wykorzystaniem programów GIMP i Inkscape do poprawy jakości obrazów. Sugerowano wektoryzację bitmapy oraz poprawę kontrastu, co pozwala na uzyskanie wyraźniejszych krawędzi ścieżek. Wskazano również na możliwość konwersji obrazów do formatów używanych w programach do projektowania PCB, takich jak KiCad i Eagle, z wykorzystaniem konwerterów bitmap. Użytkownicy podkreślali znaczenie eksperymentowania z różnymi ustawieniami i narzędziami, aby osiągnąć najlepsze rezultaty.
Wygenerowane przez model językowy.
REKLAMA