Zwarte oppervlakte in gele kaas

Pagina: 1
Acties:
  • 164 views sinds 30-01-2008
  • Reageer

  • JorisPenders
  • Registratie: April 2004
  • Laatst online: 20-01 17:12

JorisPenders

Designer & Coder

Topicstarter
Hallo allemaal,

Nu krijg ik van mijn vader net een foto doorgestuurd van een komijnenkaas. Hierin moet de oppervlakte bepaald worden van de "zwarte" stukjes t.o.v. de "gele kaas". Aangezien hier een groot contrast in zit is het niet moeilijk hier een complete black/white foto van te maken.

De zwarte oppervlakte (aantal pix waarschijnlijk) moet een percentage worden van het geheel. Dit rekenwerk is natuurlijk makkelijk uit te voeren als je de oppervlakte weet. Alleen hoe kom ik gemakkelijk aan de zwarte oppervlakte?

Ik zou niet weten waar ik mee moet beginnen. Het betreft hier het volgende plaatje:
klikz

Alvast jullie dankz0rz :)

SystemSpecs -- WebArea - Your Online Home -- Webdesign


  • Sick Nick
  • Registratie: Februari 2001
  • Laatst online: 14:49

Sick Nick

Drop the top!

Even simpel gezegd:

- plaatje omzetten naar 2 kleuren, dus echt zwart en wit (of een andere combi)
- pixels tellen, hoeveel wit en hoeveel zwart
- ratio berekenen

Kan met elke simpele programmeertaal wel lijkt me, iig met java.

Verwijderd

Zorg ervoor dat het contrast zo hoog mogelijk is. Meet het verschil tussen het lichtste en het donkerste punt. Neem daarna het gemiddelde (resizen naar 1 pixel). En dan kun je dus bepalen hoeveel er zwart is.

  • Yoeri
  • Registratie: Maart 2003
  • Niet online

Yoeri

O+ Joyce O+

(overleden)
Als het om echt zwart gaat is het natuurlijk eenvoudig en kun je gewoon alles wat niet echt zwart is elimineren. Als je het 'donkere' wilt, dan zul je een grens moeten bepalen waarboven je als 'donker' beschouwt :)

Kijkje in de redactiekeuken van Tweakers.net
22 dec: Onze reputatie hooghouden
20 dec: Acht fouten


  • GambitRS
  • Registratie: Juni 2001
  • Laatst online: 13-06-2013

GambitRS

w00t

kan je niet gewoon het aantal zwarte pixels tellen en dat delen door het totaal aantal pixels maal 100%?

MechWarrior || Monsters Game


Verwijderd

Ik zeg 0,4% :vork:

[ Voor 5% gewijzigd door Verwijderd op 11-04-2007 20:10 ]


  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 27-01 08:15

Acid_Burn

uhuh

Klinkt als huiswerk. Zelfde soort opgave moeten doen op school :P

grayscale maken alle pixels met een grijswaarde van bijv >128 tel je en deel je door het totaal aan pixels.. klaar.

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


  • JorisPenders
  • Registratie: April 2004
  • Laatst online: 20-01 17:12

JorisPenders

Designer & Coder

Topicstarter
GambitRS schreef op woensdag 11 april 2007 @ 20:08:
kan je niet gewoon het aantal zwarte pixels tellen en dat delen door het totaal aantal pixels maal 100%?
Handmatig? :+

Ik schrijf er wel een kleine app. voor. Aangezien ik Java nou niet zo erg goed beheers wordt het een webscriptje m.b.v. PHP.

Ik ga als volgt te werk:
- Convert to Grayscale
- Voor elke pixel imagecolorat() op loslaten en (inderdaad) boven 128 is wit, onder 128 is zwart
- Tel de zooi bij elkaar op, doe wat delingen en geef een percentage :-)

Half uurtje werk moet ie toch gemaakt zijn :)

SystemSpecs -- WebArea - Your Online Home -- Webdesign


Verwijderd

En als een plaatje nou alleen maar uit grijs bestaat, dat net iets lichter is dan "half"-grijs, dan is je plaatje dus 100% witvolgens jou? Neem het gemiddelde! Maak niet de fout door voor elke pixel af te gaan ronden. Maak een grand total van alle kleurwaarden, en deel dat door het aantal pixels. Daar komt een gemiddelde uit. En dat gemiddelde moet je gaan vergelijken met de maximum en minimum waarden.

  • chem
  • Registratie: Oktober 2000
  • Laatst online: 27-01 19:49

chem

Reist de wereld rond

Klaar voor een nieuwe uitdaging.


  • inquestos
  • Registratie: November 2001
  • Nu online
Doe ik altijd door met levels in photoshop in alle 3 de kanalen afzonderlijk naar de extremen te te trekken, en dan te verkleinen naar 1 pixel (zoals Cheatah 't zegt). Hou in dit geval je 9/768 over, wat 1,17% is

Fotografie: | Flickr | Canon 5DII + 20mm + 35mm + 50mm + 100mm || Hardlopen: Strava PR 5km: 20:26 10km: 44:35 HM 1:39:58


  • ton.b
  • Registratie: April 2007
  • Laatst online: 27-06-2025
Verwijderd schreef op donderdag 12 april 2007 @ 09:40:
En als een plaatje nou alleen maar uit grijs bestaat, dat net iets lichter is dan "half"-grijs, dan is je plaatje dus 100% witvolgens jou? Neem het gemiddelde! Maak niet de fout door voor elke pixel af te gaan ronden. Maak een grand total van alle kleurwaarden, en deel dat door het aantal pixels. Daar komt een gemiddelde uit. En dat gemiddelde moet je gaan vergelijken met de maximum en minimum waarden.
Het gemiddelde is ook geen goede optie als je eens een plaatje krijgt met vrij weinig zwarte vlekken. Het is niet zo moeilijk om een algoritme te maken die het voor *1* plaatje oplost, maar een robuust algoritme wat ongevoelig is voor verschillende helderheden etc. is wat lastiger.

Mijn insteek zou zijn om een (monochroom) histogram te maken en de drempel tussen de twee grootste pieken (zwart en wit) te leggen. En dat werkt ook alleen maar goed als het hele beeld gevuld is met... kaas.

  • Scyth
  • Registratie: Juli 2001
  • Laatst online: 16-03-2024

Scyth

Fat finger, three beer

97,6% geel, de rest is zwart.

Ik heb de contrast dusdanig verhoogd en met brighness gespeeld zodat er maar iets van 3 kleuren overbleven. Toen een color-reduce gedaan naar 2 kleuren zonder error diffusion. Dan heb je een net zwart wit plaatje. Toen de histogram tool gepakt, en dan kan je precies het percentage wit (en zwart) zien.
What he said. Damn you ton.b.

[ Voor 18% gewijzigd door Scyth op 17-04-2007 11:43 ]

Dell Studio XPS 16
Project: BavBierSub 1.0 BavBierSub 2.0

Pagina: 1