Planera Motivering Kontrollera

Utjämna histogram för att förbättra bildkvaliteten. Grundläggande bildbehandling Filtrera bullriga bilder

Med alla element-för-element-transformationer ändras sannolikhetsfördelningslagen som beskriver bilden. Låt oss överväga mekanismen för denna förändring med hjälp av exemplet på en godtycklig transformation med en monoton egenskap som beskrivs av en funktion (figur 2.8), som har en enkel värderad invers funktion. Antag att den slumpmässiga variabeln lyder en sannolikhetstäthet. Låt vara ett godtyckligt litet intervall av värden för en slumpmässig variabel, och - motsvarande intervall för den transformerade slumpmässiga variabeln.

Ett värde som faller in i ett intervall innebär ett värde som faller in i ett intervall, vilket betyder att de två händelserna är sannolika. Därför kan vi, med hänsyn till det lilla intervallet, skriva en ungefärlig jämställdhet:

,

där modulerna tar hänsyn till sannolikheternas beroende av intervallernas absoluta längd (och oberoende av tecken på steg och). Beräkna utifrån detta sannolikhetstätheten för den transformerade kvantiteten, istället för dess uttryck genom den inversa funktionen och genomföra passagen till gränsen vid (och därför), får vi:

. (2.4)

Detta uttryck låter dig beräkna sannolikhetstätheten för transformationsprodukten, som, som framgår av den, inte sammanfaller med distributionstätheten för den ursprungliga slumpmässiga variabeln. Det är klart att den utförda transformationen har en signifikant effekt på densiteten, eftersom (2.4) inkluderar dess inversa funktion och dess derivat.

Relationer blir något mer komplexa om transformationen beskrivs av en icke-en-till-en-funktion. Ett exempel på en sådan mer komplex egenskap med tvetydiga invers funktion sågtandskarakteristiken i fig. 2.4, K. Men i allmänhet förändras inte betydelsen av de probabilistiska transformationerna i detta fall.

Alla element-för-element-transformationer av bilder som behandlas i detta kapitel kan betraktas ur synpunkten för förändringen i sannolikhetstätheten som beskrivs genom uttryck (2.4). Uppenbarligen, för ingen av dem, kommer sannolikhetstätheten för utgångsprodukten inte att sammanfalla med sannolikhetstätheten för den ursprungliga bilden (förutom naturligtvis en trivial transformation). Det är lätt att verifiera att med linjär kontrast formen av sannolikhetstätheten bevaras, men i det allmänna fallet, dvs för godtyckliga värden för parametrarna för den linjära transformationen, parametrarna för sannolikhetstätheten för den transformerade bilden förändra.

Bestämning av de sannolikhetsegenskaperna hos bilder som har genomgått olinjär bearbetning är en direkt uppgift för analysen. När man bestämmer sig praktiska uppgifter av bildbehandling kan det omvända problemet ställas: genom den kända formen av sannolikhetstätheten och den önskade formen, bestäm den nödvändiga transformation som den ursprungliga bilden ska utsättas för. I praktiken med digital bildbehandling leder omvandlingen av bilden till en utrustningsbar distribution ofta till ett användbart resultat. I detta fall

var och är lägsta och högsta ljusstyrka för den konverterade bilden. Låt oss bestämma karaktäristiken för omvandlaren som bestämmer denna uppgift... Låt och är relaterade efter funktion (2.2), och är de integrerade distributionslagarna för ingångs- och utmatningsmängder. Med hänsyn till (2.5) finner vi:

.

Ersätter detta uttryck i tillståndet av sannolikhetsekvivalens

efter enkla omvandlingar får vi relationen

vilket är karakteristiskt (2.2) i problemet som ska lösas. Enligt (2.6) genomgår originalbilden en olinjär transformation, vars karaktäristik bestäms av den integrerade distributionslagen för själva originalbilden. Därefter förs resultatet till det angivna dynamiska intervallet med hjälp av den linjära kontrasterande operationen.

På samma sätt kan lösningar erhållas för andra liknande problem där det krävs att ta bildens distributionslagar till en given form. I tabellen över sådana konverteringar ges. En av dem, den så kallade hyperboliseringen av distributionen, innebär att sannolikhetstätheten för den transformerade bilden reduceras till en hyperbolisk form:

(2.7)

Om vi ​​tar hänsyn till att när ljuset passerar genom ögat är ingångsljusstyrkan logaritm av näthinnan, då visar sig den slutliga sannolikhetstätheten vara enhetlig. Således ligger skillnaden från det föregående exemplet i att ta hänsyn till synens fysiologiska egenskaper. Det kan visas att en bild med sannolikhetstäthet (2,7) erhålls vid utgången av ett olinjärt element med karakteristiken

bestäms också av originalbildens integrerade distributionslag.

Således förutsätter transformationen av sannolikhetstätheten kunskap om den kumulativa fördelningen för originalbilden. Som regel finns det ingen tillförlitlig information om honom. Användningen av analytiska approximationer för de ändamål som övervägs är också till liten nytta deras små avvikelser från de sanna fördelningarna kan leda till betydande skillnader i resultaten från de som krävs. Därför utförs transformationen av distributioner i bildbehandling, i två steg.

I det första steget mäts histogrammet för originalbilden. För en digital bild, vars gråskala till exempel tillhör heltalsområdet 0 ... 255, är histogrammet en tabell med 256 nummer. Var och en av dem visar antalet punkter i ramen med en given ljusstyrka. Genom att dividera alla siffror i denna tabell med den totala provstorleken lika med antalet bildpunkter som används, erhålls en uppskattning av sannolikhetsfördelningen av bildens ljusstyrka. Vi betecknar denna uppskattning ... Uppskattningen av den kumulativa fördelningen erhålls sedan med formeln:

.

I det andra steget utförs den olinjära transformationen (2.2) i sig, vilket ger de nödvändiga egenskaperna för utdatabilden. I detta fall, i stället för den okända sanna kumulativa fördelningen, används dess uppskattning baserat på histogrammet. Med tanke på detta kallas alla metoder för element-för-element-transformering av bilder, vars syfte är att modifiera distributionslagarna, histogrammetoder. I synnerhet kallas transformationen där utdatabilden har en enhetlig fördelning utjämning (utjämning) av histogram.

Observera att hikan tillämpas både på bilden som helhet och på dess enskilda fragment. Det senare kan vara användbart vid bearbetning av icke-stationära bilder, vars innehåll skiljer sig avsevärt i sina egenskaper på olika områden. I detta fall kan den bästa effekten uppnås genom att applicera histogrambehandling på enskilda områden.

Användningen av relationer (2.4) - (2.8), som är giltiga för bilder med en kontinuerlig ljusfördelning, är inte helt korrekt för digitala bilder. Man bör komma ihåg att som ett resultat av bearbetning är det inte möjligt att uppnå en idealisk sannolikhetsfördelning av utdatabilden, därför är det användbart att styra dess histogram.

a) originalbild

b) resultatet av behandlingen

Ris. 2.9. Exempel på bildutjämning

Figur 2.9 visar ett exempel på utjämning utförd i enlighet med den beskrivna metoden. Ett kännetecken för många bilder som erhållits i verkliga bildsystem är en betydande andel mörka områden och ett relativt litet antal områden med hög ljusstyrka. Utjämning är utformad för att korrigera bilden genom att anpassa de integrerade områdena i områden med olika ljusstyrka. Jämförelse av original (bild 2.9.a) och bearbetade (fig. 2.9.b) bilder visar att den omfördelning av ljusstyrka som uppstår under bearbetning leder till en förbättring av den visuella uppfattningen.

JÄMFÖRELSE AV EKVALISERINGSALGORITMER

HYSTOGRAM HALVTONBILDER

1 "2 Alexandrovskaya A.A., Mavrin E.M.

1 Alexandrovskaya Anna Andreevna - magisterstudent; Mavrin Evgeniy Mikhailovich - Magisterstudent, institution informationssystem och telekommunikation,

Fakulteten för informatik och kontrollsystem, Moskvas statliga tekniska universitet. N.E. Bauman, Moskva

Sammanfattning: Denna artikel jämför algoritmer för digital bildbehandling, nämligen histogramutjämningsalgoritmer. Tre algoritmer övervägs: global histogramutjämning (HE), adaptiv histogramutjämning (ANE), adaptiv histogramutjämning med kontrastbegränsning (CHANE). Resultatet av arbetet som beskrivs i artikeln är en visuell jämförelse av algoritmernas arbete på samma bilder.

Nyckelord: bildhistogram, histogramutjämning av bilder, COI, datorsyn, ANE, XANE.

För att förbättra bildkvaliteten är det nödvändigt att öka ljusstyrka, kontrast, skärpa, klarhet. Sammantaget kan dessa parametrar förbättras genom utjämning av bildhistogrammet. När du definierar objektens konturer är de data som finns i gråskala bilden i de flesta fall tillräckliga. En gråskala bild är en bild som endast innehåller information om ljusstyrka, men inte om färgen på pixlar. Därför är det lämpligt att konstruera ett histogram för en gråskala bild.

Låt bilden som övervägs bestå av n pixlar med en intensitet (ljusstyrka) r i intervallet från 0 till 2bpp, där bpp är antalet bitar som tilldelas för kodning av ljusstyrkan för en pixel. I de flesta färgmodeller för kodning

ljusstyrkan för en färg på en pixel kräver 1 byte. Följaktligen definieras pixelintensiteten på en uppsättning från 0 till 255. Diagrammet över beroendet av antalet pixlar i en bild med intensitet r till själva intensiteten kallas bildhistogram. I fig. 1 visar ett exempel på testbilder och histogram byggda på grundval av dessa bilder:

Ris. 1. Testa bilder och deras histogram

Naturligtvis, efter att ha studerat motsvarande histogram, kan man dra slutsatser om originalbilden. Till exempel kännetecknas histogram av mycket mörka bilder av koncentrationen av värdena som inte är noll för histogrammet nära noll ljusstyrka, medan för ljusa bilder, tvärtom, samlas alla värden som inte är noll på höger sida av histogrammet.

Histogramutjämningsalgoritmer är populära algoritmer för att förbättra den bearbetade gråskalebilden. I allmänhet har HE-algoritmer (Histogram Equalization) en relativt låg beräkningskostnad och visar samtidigt hög effektivitet. Kärnan i arbetet av denna typ algoritmer består i att justera nivåerna för en halvtonbild i enlighet med sannolikhetsfördelningsfunktionen för en given bild (1) och som en konsekvens ökar det dynamiska intervallet för ljusstyrkans fördelning. Detta leder till bättre bilder,

såsom: ljusstyrka kontrast, skärpa, klarhet.

p (i) = -, i = 0,255, n

där p (i) är sannolikheten för att en pixel ser ut med ljusstyrka i, normaliserad funktion av histogrammet för den ursprungliga bilden, k är koordinaterna för pixeln för den bearbetade bilden, g (k) är den utjämnade bilden.

Histogramutjämningsalgoritmer är indelade i två typer: lokal (adaptiv) histogramutjämning och global histogramutjämning. I den globala metoden byggs ett diagram och histogrammet för hela bilden utjämnas (fig. 3 a). I den lokala metoden (fig. 3b) konstrueras ett stort antal histogram, där varje histogram endast motsvarar en del av den bearbetade bilden. Denna metod förbättrar lokal kontrast.

bild, vilket gör att du kan få bättre övergripande bearbetningsresultat.

Lokala behandlingsalgoritmer kan delas in i följande typer: överlappande lokala processblock, icke-överlappande lokala processblock och delvis överlappande lokala processblock (fig 2).

Ris. 2. En illustration av hur olika typer av algoritmer fungerar för lokal bildbehandling: a) överlappande lokala behandlingsblock, b) icke-överlappande lokala processblock, c) delvis överlappande lokala processblock

Den överlappande blockalgoritmen ger det bästa bearbetningsresultatet, men är den långsammaste bland de listade. Algoritmen för icke-överlappande block kräver tvärtom mindre bearbetningstid, allt annat lika, men eftersom de bearbetade blocken inte överlappar varandra är skarpa förändringar i ljusstyrkan möjliga i den slutliga bilden. Kompromisslösningen är den delvis överlappande blockalgoritmen. Nackdelarna med adaptiva histogramutjämningsalgoritmer inkluderar överförstärkning av bildparametrar och den resulterande ökningen av brus i den slutliga bilden.

En förbättrad version av algoritmen ovan är algoritmen med kontrastbegränsad adaptiv histogramutjämning (CLAHE) (fig. 4c). Huvud funktion av denna algoritm är begränsningen

intervall för histogrammet baserat på analysen av ljusstyrkan för pixlar i det bearbetade blocket (2), varigenom den resulterande bilden ser mer naturlig ut och mindre bullrig.

där add är ökningskoefficienten för värdet av histogramfunktionen, ps är antalet pixlar som överstiger tröskel... En illustration av förändringen i histogrammet visas i figur 3.

Ris. 3. Begränsa histogramets intervall i CLAHE -algoritmen

Det är värt att notera att den klassiska SLIB -algoritmen använder bilinjär interpolation för att eliminera gränserna mellan de bearbetade blocken.

Ris. 4. Resultaten av histogramutjämningsalgoritmerna: a) global histogramutjämning (HE), b) adaptiv histogramutjämning (ANE), c) adaptiv histogramutjämning med kontrastbegränsning (CHANE)

Vid visuell jämförelse av bearbetningsresultaten den bästa metodenär CLAHE (fig. 3c). Bilden som bearbetas med denna metod har mindre brus än bilden som bearbetas med AHE -metoden, och ljusstyrkan är mer naturlig. Jämfört med bilden som bearbetas med den globala utjämningsmetoden förbättrar CLAHE -metoden tydligheten hos små och suddiga detaljer i den bearbetade bilden, och ökar också kontrasten, men inte så överdriven som för AHE -metoden. Nedan finns också en tabell för att uppskatta utförandetiden för de övervägda metoderna i MATLAB 2016 -programmeringsmiljön.

Tabell 1. Uppskattning av utförandetiden för den övervägda

Ledtid

Programnamn med Runtime

metod med övervägd metod, c metod, c

CLAHE 0,609 0,519

Bibliografi

1. Chichvarin N.V. Signaldetektering och igenkänning // Nationalbiblioteket dem. N.E. Bauman [ Elektronisk resurs] 2016, åtkomstläge: https://ru.bmstu.wiki/Correcting_Luminance_and_contrast_ av bilder (datum för åtkomst: 03.05.2019).

2. Gonzalez R.K. , Woods R.E. ... Digital Bildbehandling, 3: e upplagan, New Jersey: Pearson Education, 2008.950 sid.

3. Gupta S., Kaur Yu. Granskning av olika lokala och globala kontrastförbättringstekniker för en digital bild // International Journal of Computer Applications [Electronic resource] 2014, URL: https://pdfs.semanticscholar.org/7fb1/bf8775a1a1eaad9b3d1f4 5bc85adc5c3212f.pdf (Hämtad 3.05. 2019) .

4. Ma J., Fan Ks. , Young S. Ks. , Zang Ks. , Ztsu Ks. ... Contrast Limited Adaptive Histogram Equalization Based Fusion for Underwater Image Enhancement // Preprints [Electronic resource] 2017, URL: https: // www. förtryck. org / manuskript / 201703.0086 / v 1 (Åtkomstdatum: 05/03/2019).

Utför bildbehandling, visualisering och analys

Image Processing Toolbox ™ tillhandahåller en omfattande uppsättning referensstandardalgoritmer och arbetsflödesapplikationer för bildbehandling, analys, visualisering och algoritmutveckling. Du kan utföra bildsegmentering, bildförbättring, brusreducering, geometriska transformationer och visa registreringar med hjälp av djupinlärning och traditionella metoder bildbehandling. Stöder bearbetning av verktygslådor i 2D, 3D och godtyckligt stora bilder.

Med bildbehandlingsverktygslådeapplikationer kan du automatisera vanliga bildbearbetningsflöden. Du kan interaktivt segmentera bilddata, jämföra bildregistreringsmetoder och satsvis bearbeta stora datamängder. Visualiseringsfunktioner och applikationer låter dig utforska bilder, 3D -volymer och videor; justera kontrasten; skapa histogram; och hantera de synliga områdena (KINGAR).

Du kan påskynda algoritmer genom att köra dem på flerkärniga processorer och GPU: er. Många verktygslådsfunktioner stöder C / C ++ - kodgenerering för distribution av datorsyn och prototypanalys.

Början av arbetet

Lär dig grunderna i bildbehandlingsverktygslådan

Importera, exportera och transformera

Bilddataimport och -export, konvertering av bildtyper och klasser

Display och utforskning

Interaktiva bild- och prospekteringsverktyg

Geometrisk transformation och bildregistrering

Skala, rotera, utför andra N-D-transformationer och justera bilder med intensitetskorrelation, funktionsmatchning eller kontrollpunktsvisning

Displayfiltrering och förbättring

Kontrastjustering, morfologisk filtrering, suddning, ROI-baserad bearbetning

Visa segmentering och analys

Områdeanalys, strukturanalys, pixel- och bildstatistik

Deep Learning för bildbehandling

Utför bildbehandlingsuppgifter som att ta bort bildbrus och skapa bilder med hög upplösning från lågupplösta bilder med hjälp av konvolutionsneurala nätverk (kräver Deep Learning Toolbox ™),

Med alla element-för-element-transformationer ändras sannolikhetsfördelningslagen som beskriver bilden. Med linjär kontrast bibehålls formen av sannolikhetstätheten, men i allmänhet, dvs. vid godtyckliga värden för parametrarna för den linjära transformationen ändras parametrarna för sannolikhetstätheten för den transformerade bilden.

Bestämning av de sannolikhetsegenskaperna hos bilder som har genomgått olinjär bearbetning är en direkt uppgift för analysen. Vid lösning av praktiska problem med bildbehandling kan det omvända problemet ställas: enligt den kända formen av sannolikhetstätheten s f(f) och önskad form s. g(g) bestämma den nödvändiga transformationen g= ϕ( f) som originalbilden ska utsättas för. I praktiken med digital bildbehandling leder omvandlingen av bilden till en utrustningsbar distribution ofta till ett användbart resultat. I detta fall

var g min och g max - minsta och högsta ljusstyrka för den konverterade bilden. Låt oss bestämma egenskaperna hos omvandlaren som löser detta problem. Låt vara f och g länkade efter funktion g(n, m) = j ( f(n, m)), men P f(f) och Sid(g) - integrerade lagar för distribution av input och output ljusstyrka. Med hänsyn till (6.1) finner vi:

Ersätter detta uttryck i tillståndet av sannolikhetsekvivalens

efter enkla omvandlingar får vi relationen

representerar egenskapen g(n, m) = j ( f(n, m)) i problemet som ska lösas. Enligt (6.2) genomgår originalbilden en olinjär transformation, vars egenskap är P f(f) bestäms av originalbildens integrerade distributionslag. Därefter förs resultatet till det angivna dynamiska intervallet med hjälp av den linjära kontrasterande operationen.

Således förutsätter transformationen av sannolikhetstätheten kunskap om den kumulativa fördelningen för originalbilden. Som regel finns det ingen tillförlitlig information om honom. Tillnärmning av analytiska funktioner på grund av approximationsfel kan leda till en signifikant skillnad i resultaten från de som krävs. Därför utförs transformationen av distributioner i bildbehandling, i två steg.



I det första steget mäts histogrammet för originalbilden. För en digital bild, vars gråskala till exempel tillhör ett heltalsområde, är histogrammet en tabell med 256 nummer. Var och en av dem visar antalet punkter i bilden (ramen) som har en given ljusstyrka. Genom att dividera alla siffror i denna tabell med den totala provstorleken lika med antalet sampel i bilden, erhålls en uppskattning av sannolikhetsfördelningen av bildens ljusstyrka. Vi betecknar denna uppskattning med q s f(f q), 0 ≤ f q≤ 255. Därefter erhålls uppskattningen av den kumulativa fördelningen med formeln:

I det andra steget utförs själva den olinjära transformationen (6.2), vilket ger de nödvändiga egenskaperna hos utdatabilden. I detta fall, i stället för den okända sanna kumulativa fördelningen, används dess uppskattning baserat på histogrammet. Med hänsyn till detta kallas alla metoder för element-för-element-transformering av bilder, vars syfte är att ändra distributionslagarna, histogrammetoder. I synnerhet kallas en transformation där utmatningsbilden har en enhetlig fördelning utjämning (utjämning) av histogrammet.

Observera att hikan tillämpas både på bilden som helhet och på dess individuella fragment. Det senare kan vara användbart vid bearbetning av icke-stationära bilder, vars egenskaper skiljer sig väsentligt åt olika områden... I detta fall kan den bästa effekten uppnås genom att applicera histogrambehandling på enskilda områden - intressanta regioner. Detta kommer dock att förändra värdena för avläsningarna och alla andra områden. Figur 6.1 visar ett exempel på utjämning utförd i enlighet med den beskrivna metoden.

Karaktäristiskt drag Många bilder som fås i riktiga bildsystem har en betydande andel mörka områden och ett relativt litet antal områden med hög ljusstyrka.

Figur 6.1 - Ett exempel på bildhistogramutjämning: a) originalbilden och dess histogram c); b) den transformerade bilden och dess histogram d)

Utjämning av histogrammet resulterar i utjämning av de integrerade områdena med enhetligt fördelade ljusstyrka. Jämförelse av originalet (Figur 6.1 a) och bearbetade (Figur 6.1 b) bilder visar att den omfördelning av ljusstyrka som uppstår under bearbetning leder till en förbättring av visuell uppfattning.

Det finns tre huvudmetoder för att öka kontrasten i en bild:

  • linjär sträckning av histogrammet (linjär kontrast),
  • normalisering av histogram,
  • utjämning (linearisering eller utjämning) av histogrammet.

Linjär stretch reduceras till att tilldela nya intensitetsvärden till varje bildpunkt. Om intensiteten för den ursprungliga bilden ändrades i intervallet från till, är det nödvändigt att linjärt "sträcka" det angivna intervallet så att värdena ändras från 0 till 255. För att göra detta är det tillräckligt att beräkna om den gamla intensiteten värden för alla pixlar enligt formeln, där koefficienterna helt enkelt beräknas utifrån att gränsen ska gå till 0, och - till 255.

Normaliserar histogram Till skillnad från den tidigare metoden sträcker den inte hela intensitetsvariationen, utan bara den mest informativa delen. Den informativa delen förstås som en uppsättning histogramtoppar, d.v.s. intensiteter som är vanligast i bilden. Facken som motsvarar sällsynta intensiteter kastas under normaliseringsprocessen, sedan utförs den vanliga linjära sträckningen av det resulterande histogrammet.

Inriktning stapeldiagram är en av de vanligaste metoderna. Målet med utjämningen är att se till att alla ljusstyrkanivåer har samma frekvens och att histogrammet överensstämmer med en enhetlig fördelningslag. Låt oss säga att du har en gråskala som har pixelupplösning. Antalet pixel ljusstyrka kvantisering nivåer (antal fack) är. Sedan i genomsnitt för varje ljusstyrka, pixlar. Den grundläggande matematiken ligger i att jämföra två fördelningar. Låt - slumpmässiga variabler som beskriver förändringen i pixlarnas intensitet i bilderna, - densiteten för intensitetsfördelningen i originalbilden, - den önskade distributionstätheten. Det är nödvändigt att hitta en transformation av distributionstätheten, vilket skulle möjliggöra erhållande av önskad densitet:

Låt oss beteckna med och integrerade lagar för distribution av slumpmässiga variabler och. Av villkoret om sannolikhetsekvivalens följer det ... Låt oss skriva ner den integrerade distributionslagen per definition:

Därför får vi det

Det återstår att räkna ut hur man kan uppskatta integrerad distributionslag. För att göra detta måste du först bygga ett histogram för originalbilden och sedan normalisera det resulterande histogrammet genom att dividera värdet på varje fack med totala summan pixlar. Fackets värden kan betraktas som ett ungefärligt värde för distributionstäthetsfunktionen. Således kan värdet av den kumulativa fördelningsfunktionen representeras som en summa av följande form:

Den konstruerade uppskattningen kan användas för att beräkna nya intensitetsvärden. Observera att de listade histogramtransformationerna kan tillämpas inte bara på hela bilden utan också på dess enskilda delar.

EqualizeHist -funktionen implementeras i OpenCV -biblioteket, vilket ökar kontrasten i en bild genom att utjämna histogrammet [,]. Funktionsprototypen visas nedan.

void equalizeHist (const Mat & src, Mat & dst)

Funktionen fungerar i fyra steg:

Nedan är ett exempel på ett program som plattar ut ett histogram. Programmet tar namnet på den ursprungliga bilden som ett kommandoradsargument. Efter att ha utfört histogramutjämningsoperationen visas originalbilden 1 Bilden som används är från PASACL VOC 2007 -databasen. konverterat till gråskala (figur 7.11, vänster) och en justerad histogrambild (figur 7.11, höger).

#omfatta #omfatta med namnrymd cv; const char helper = "Sample_equalizeHist.exe \ n \ \ t - bildfilnamn \ n "; int main (int argc, char * argv) (const char * initialWinName =" Initial Image ", * equalizedWinName =" Equalized Image "; Mat img, grayImg, equalizedImg; if (argc< 2) { printf("%s", helper); return 1; } // загрузка изображения img = imread(argv, 1); // преобразование в оттенки серого cvtColor(img, grayImg, CV_RGB2GRAY); // выравнивание гистограммы equalizeHist(grayImg, equalizedImg); // отображение исходного изображения и гистограмм namedWindow(initialWinName, CV_WINDOW_AUTOSIZE); namedWindow(equalizedWinName, CV_WINDOW_AUTOSIZE); imshow(initialWinName, grayImg); imshow(equalizedWinName, equalizedImg); waitKey(); // закрытие окон destroyAllWindows(); // осовобождение памяти img.release(); grayImg.release(); equalizedImg.release(); return 0; }


Ris. 7.11.