Vytiahnutie urcitych obrazcov z fotky

Všetko o programoch, problémoch...
POZOR: žiadny WAREZ
Používateľov profilový obrázok
Shatterhand
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 3076
Dátum registrácie: Št 26. Mar, 2009, 16:45
Bydlisko: Bratislava

Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa Shatterhand »

Zdravím všetkých majstrov ovládajúcich prácu s grafickými programami! :-D

Mám pred sebou jeden zapeklitý problém, a keďže nemám až tak veľa času sa učiť robiť od nuly v nejakom grafickom programe spracovanie fotiek, tak sa obraciam na vás.
Potrebujem z negatívov tohto typu(len z tých s -orig) - nejako "vextrahovať" tie čierne zrnká(v prípade ti434) a tie biele(v prípade ti437). Tie -zrnka som sa niečo ja snažil vo Photoshope CS 5.5, pričom pri jednej fotke mi pekne zvýraznil hranice, ale pri druhej na houby... :(

Vyextrahovať v tom zmysle, že by sa mala zachovať ich veľkosť, pretože tá sa bude musieť zrátať pre každé zrnko, podľa možnosti čo najpresnejšie. A to je cieľ - vyrátať priemernú veľkosť tých zrniek.

Takže ak niekto viete nejaký postup, prípadne na to nejaký nástroj, ktorý mi spoľahlivo tie zrnká z toho obrázku rozpozná/vyberie a bude aj vedieť zrátať veľkosť každého zrnka, tak ste jednoducho super :cool: ešte podotýkam, že nejde o tieto dva obrázky, ale asi tak o stovky, takže malo by to fungovať univerzálne

Ešte aby vás hneď neodradilo to ulož to, tu to dávam aspoň takto: Obrázok
- všimnite si, že tie zakrúžkované vyzerajú ako dve oddelené zrnká, ale je to v skutočnosti len jedno - takže potrebujem, aby mi takéto bralo ako jedno zrno(proste ten krpatý priestor medzi nimi nech zmizne a zlúči ich, a veľkosť sa bude počítať za jedno zrno).

Ďakujem všetkým pekne za rady! :)
"Mind always fails first". "The darkest places in hell are reserved for those who maintain their neutrality in times of moral crises." "Tvrdiť, že vám nezáleží na práve na súkromie, lebo nemáte čo skrývať...je to isté...ako keď poviete, že vám nezáleží na slobode prejavu, lebo nemáte čo povedať."
Spoiler: ukázať
#1 PC: CPU Intel Core i7 920 rev. D0@2.93GHz MB ASUS P6T Deluxe V2 GPU Sapphire Radeon HD5850 Toxic RAM 3x4GB kit 1333Mhz HDD Seagate Barracuda 7200.12 1TB PSU Enermax Liberty ELT 500W 80+ CASE Thermaltake Swing
#2 PC: CPU Intel Xeon L5639@2.4GHz MB MSI Eclipse SLI GPU AMD Radeon HD7970 GHz Ed. W3X RAM 3x4GB Kingston KHX 1600MHz CL9 @1333Mhz HDD#1 Crucial MX100 250GB @SATAII PSU Enermax Revolution 950W 80+ Silver CASE Enermax iVektor black Chladenie CM Seidon 120V-FAN Enermax Magma @CPU; 3x Noctua NF S12B FLX - 3x top push
Používateľov profilový obrázok
Shatterhand
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 3076
Dátum registrácie: Št 26. Mar, 2009, 16:45
Bydlisko: Bratislava

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa Shatterhand »

No taaak :) Určite sa tu niekto nájde, kto by to vedel...kde si had, need a hand with this :-)
"Mind always fails first". "The darkest places in hell are reserved for those who maintain their neutrality in times of moral crises." "Tvrdiť, že vám nezáleží na práve na súkromie, lebo nemáte čo skrývať...je to isté...ako keď poviete, že vám nezáleží na slobode prejavu, lebo nemáte čo povedať."
Spoiler: ukázať
#1 PC: CPU Intel Core i7 920 rev. D0@2.93GHz MB ASUS P6T Deluxe V2 GPU Sapphire Radeon HD5850 Toxic RAM 3x4GB kit 1333Mhz HDD Seagate Barracuda 7200.12 1TB PSU Enermax Liberty ELT 500W 80+ CASE Thermaltake Swing
#2 PC: CPU Intel Xeon L5639@2.4GHz MB MSI Eclipse SLI GPU AMD Radeon HD7970 GHz Ed. W3X RAM 3x4GB Kingston KHX 1600MHz CL9 @1333Mhz HDD#1 Crucial MX100 250GB @SATAII PSU Enermax Revolution 950W 80+ Silver CASE Enermax iVektor black Chladenie CM Seidon 120V-FAN Enermax Magma @CPU; 3x Noctua NF S12B FLX - 3x top push
Používateľov profilový obrázok
RP
Administrátor
Administrátor
Príspevky: 2547
Dátum registrácie: St 21. Mar, 2001, 20:00
Bydlisko: Kosice

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa RP »

Ak nikto nic tak drevorubacsky sposob co ma z "brucha" teraz napadol.

1. Vyrez tie zrna co potrebujes a vytvor z nich male obrazky kde budu len tie zrna a tmavsie pozadie.
2. uloz ich do nejakeho ASCII lahko a pohodlne citatelneho formatu, napr. ppm
3. ppm format uz vies spracovat nejakym kodom co si sam napises v hocicom (C, pascal, hocico), kde budes jednoducho len pocitat svetlejsie pixely v obrazku nez nejaka zadana hranica.

Su urcite aj lepsie-efektivnejsie-rychejsie postupy, ale ked iny nie je (nik neradi), tak bude fungovat aj tento.
Používateľov profilový obrázok
Shatterhand
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 3076
Dátum registrácie: Št 26. Mar, 2009, 16:45
Bydlisko: Bratislava

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa Shatterhand »

Díki ti moc, veľmi si cením tvoju ochotu, že si sa apoň ty ozval. Pravdepodobne isto vieš(keďže RNDR. a PhD.) aj to, čo je to za obrázok, respektíve na čo mi to asi je.
Keby som to už mal robiť hentak - že manuálne orezávať, tak to môžem robiť teda vlastne aj úplne ručne - teda tak ako hovoríš. Bohužial to možno tak aj dopadne, ale ešte mám čas, tak nad tým budem dumať.

Ono v skutočnosti existuje niekoľko programov, ktoré sa podobným veciam venujú, a majú na to aj algoritmy.
Lenže funguje to tak akurát na porátanie buniek, ktoré mávajú od seba odstup, prípadne dáke kovové zliatiny, lenže na všetkých tých obrázkoch, na ktorých to funguje, sú tie hranice a farebné kontrasty oveľa rozlíšiteľnejšie. A bohužiaľ keď budem rátať len tie najväčšie a najjasnejšie zrná, tak to už síce celkom spoľahlivo viem urobiť, ale výsledok pre veľkosť zrna mi bude akurát tak na houby.

Este rozmýšľam, že teoreticky sa mi môže podariť nejak odfiltrovať najprv tie najväčšie a najjasnejšie zrná, potom tie menej...no a na tie menej...podľa mňa neexistuje nástroj.
Ešte raz - cením si ochotu a záujem

Aby bolo trochu jasné, že asi ako som zatiaľ na to išiel, prečítajte si túto krátku(5 strán, AJ)publikáciu
"Mind always fails first". "The darkest places in hell are reserved for those who maintain their neutrality in times of moral crises." "Tvrdiť, že vám nezáleží na práve na súkromie, lebo nemáte čo skrývať...je to isté...ako keď poviete, že vám nezáleží na slobode prejavu, lebo nemáte čo povedať."
Spoiler: ukázať
#1 PC: CPU Intel Core i7 920 rev. D0@2.93GHz MB ASUS P6T Deluxe V2 GPU Sapphire Radeon HD5850 Toxic RAM 3x4GB kit 1333Mhz HDD Seagate Barracuda 7200.12 1TB PSU Enermax Liberty ELT 500W 80+ CASE Thermaltake Swing
#2 PC: CPU Intel Xeon L5639@2.4GHz MB MSI Eclipse SLI GPU AMD Radeon HD7970 GHz Ed. W3X RAM 3x4GB Kingston KHX 1600MHz CL9 @1333Mhz HDD#1 Crucial MX100 250GB @SATAII PSU Enermax Revolution 950W 80+ Silver CASE Enermax iVektor black Chladenie CM Seidon 120V-FAN Enermax Magma @CPU; 3x Noctua NF S12B FLX - 3x top push
Používateľov profilový obrázok
RP
Administrátor
Administrátor
Príspevky: 2547
Dátum registrácie: St 21. Mar, 2001, 20:00
Bydlisko: Kosice

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa RP »

Ak Ti to nespravi ziadna aplikacia, i tak nemas inu volbu, musis si to i tak naprogramovat sam. Neviem co si spravil, takze pisem opat len od oka, plus toto nie je moja "domaca" oblast.

Ono to spada pod pattern recognition (cela vedna disciplina zaoberajuca sa rozpoznavanim obrazov). Existuju mnohe algoritmy/sposoby, ktore to robia/dokazu. Hladal by som taky, ktory identifikuje clustre spojenych pixelov (spojenych napr. farebnou podobnostou). Ten sposob s vyrezanim vlastne zjednodusoval cely sposob tym ze zapojil Tvoje oko, ale mozes to zautomatizovat uplne. Prv vyhladat vsetky "biele flaky", potom ak treba/chces musis najst sposob ako rozlisit tie flaky ktore potrebujes od inych, ak potrebujes len priemernu velkost flaku, tak je to jednoduchsie - potom to po identifikacii flakov uz v podstate mas.

Zaklad technicky vidim stale v dvoch (ci troch podla zadania) krokoch:
1. konverzia obrazku do spracovatelnej (ciselnej) formy
2. rozoznanie flakov (napr. stale testujem ci dany svetly pixel ma vsetkych susedov, okrem uz predtym kontrolovanych, svetlejsich ako predurcena hodnota az kym nenajdem posledny, ktory uz nema svetlejsich susedov, to bude dany koniec flaku)
3. ak treba kategorizovat flaky tak musim nejako formalizovat ktore su ake podla toho co hladam

Ale vravim, v tomto som amater. Robil by som to takto asi len preto, ze by som bol lenivy alebo nemal cas studovat teoriu rozpoznavania obrazcov.
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa pEpinko »

Neviem ci to spravne rozumiem, ale myslim, ze OpenCV by si s tym poradil. Ale asi to bude dost komplikovane.
Používateľov profilový obrázok
Shatterhand
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 3076
Dátum registrácie: Št 26. Mar, 2009, 16:45
Bydlisko: Bratislava

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa Shatterhand »

Ďakujem zatiaľ pekne za rady, v pondelok sa tomu pozrem na kloub, v nedeľu sa robotou zaoberať nebudem.
"Mind always fails first". "The darkest places in hell are reserved for those who maintain their neutrality in times of moral crises." "Tvrdiť, že vám nezáleží na práve na súkromie, lebo nemáte čo skrývať...je to isté...ako keď poviete, že vám nezáleží na slobode prejavu, lebo nemáte čo povedať."
Spoiler: ukázať
#1 PC: CPU Intel Core i7 920 rev. D0@2.93GHz MB ASUS P6T Deluxe V2 GPU Sapphire Radeon HD5850 Toxic RAM 3x4GB kit 1333Mhz HDD Seagate Barracuda 7200.12 1TB PSU Enermax Liberty ELT 500W 80+ CASE Thermaltake Swing
#2 PC: CPU Intel Xeon L5639@2.4GHz MB MSI Eclipse SLI GPU AMD Radeon HD7970 GHz Ed. W3X RAM 3x4GB Kingston KHX 1600MHz CL9 @1333Mhz HDD#1 Crucial MX100 250GB @SATAII PSU Enermax Revolution 950W 80+ Silver CASE Enermax iVektor black Chladenie CM Seidon 120V-FAN Enermax Magma @CPU; 3x Noctua NF S12B FLX - 3x top push
Používateľov profilový obrázok
valistar
VIP
VIP
Príspevky: 6853
Dátum registrácie: So 14. Mar, 2009, 19:27
Bydlisko: Ostrava/Košice

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa valistar »

podobne rozpoznavanie som robil na bakalarsku pracu - ako bolo povedane OpenCV kniznica je jednoznacnou volbou :)
zrna oddelis pouzitim niektorej z metod prahovania, na konci chces mat vsetky zrna bielou a zvysok ciernou... postacia zakladne kniznicne funkcie OpenCV a ich vhodna kombinacia.

Potom prehladas vysledny obrazok a neviem ci chces zrna zvyraznovat alebo len zratat... ale pravdepodobne si uz asi vies domysliet jednoduchy kod ktorym to spravis :)

Ja som s OpenCV robil v C++ pod Visual studiom ale da sa robit aj v Matlabe a inych jazykoch :) - vsak cek http://opencv.willowgarage.com/wiki/
Používateľov profilový obrázok
Shatterhand
Pokročilý používateľ
Pokročilý používateľ
Príspevky: 3076
Dátum registrácie: Št 26. Mar, 2009, 16:45
Bydlisko: Bratislava

Re: Vytiahnutie urcitych obrazcov z fotky

Príspevok od používateľa Shatterhand »

No, prezeral som to OpenCV, a je tam toho fakt že mrte :)

Nakoniec to vypálilo tak, že budem robiť aj ručny výber zŕn - vo Photoshope vyrežem tie zrná, potom dajaký semi-automatický spôsob, nuž a najhoršie nakoniec - dáky plne automatický spôsob, kde buď niečo vyšpekulujem, poprípade dačo nakódim. Potom pre každý spôsob merania priemernej veľkosti zrna urobím štatistiku - čas výberu zŕn, počet získanych zrn z jedného negatívu, vypočítaná veľkost tých vybratých zŕn a ich distribúcia.
V každom prípade, práve si študujem dáke filtre z toho OpenCV, takže uvidím, aké zázraky to skrýva :-)
A ďakujem vám za rady :good:
"Mind always fails first". "The darkest places in hell are reserved for those who maintain their neutrality in times of moral crises." "Tvrdiť, že vám nezáleží na práve na súkromie, lebo nemáte čo skrývať...je to isté...ako keď poviete, že vám nezáleží na slobode prejavu, lebo nemáte čo povedať."
Spoiler: ukázať
#1 PC: CPU Intel Core i7 920 rev. D0@2.93GHz MB ASUS P6T Deluxe V2 GPU Sapphire Radeon HD5850 Toxic RAM 3x4GB kit 1333Mhz HDD Seagate Barracuda 7200.12 1TB PSU Enermax Liberty ELT 500W 80+ CASE Thermaltake Swing
#2 PC: CPU Intel Xeon L5639@2.4GHz MB MSI Eclipse SLI GPU AMD Radeon HD7970 GHz Ed. W3X RAM 3x4GB Kingston KHX 1600MHz CL9 @1333Mhz HDD#1 Crucial MX100 250GB @SATAII PSU Enermax Revolution 950W 80+ Silver CASE Enermax iVektor black Chladenie CM Seidon 120V-FAN Enermax Magma @CPU; 3x Noctua NF S12B FLX - 3x top push

Návrat na "Programy a problémy s nimi"