You are on page 1of 11

6/2/13

EagleEye - HP-SEE Wiki

EagleEye
FromHPSEEWiki

Contents
1GeneralInformation 2ShortDescription 3ProblemsSolved 4ScientificandSocialImpact 5Collaborations 6Beneficiaries 7Numberofusers 8DevelopmentPlan 9ResourceRequirements 10TechnicalFeaturesandHPSEEImplementation 11UsageExample 12InfrastructureUsage 13RunningonSeveralHPSEECentres 14AchievedResults 15Publications 16ForeseenActivities

GeneralInformation
Application'sname:FeatureExtractionfromSatelliteImagesUsingaHybridComputingArchitecture Application'sacronym:EagleEye VirtualResearchCommunity:ComputationalPhysics Scientificcontact:EmilSlusanschi,emil.slusanschi@cs.pub.ro Technicalcontact:NicolaeTapus,nicolae.tapus@cs.pub.ro Developers:CosminConstantin,RazvanDobre,AlexandruHerisanu,OvidiuHupca,BetinoMiclea, AlexandruOlteanu,EmilSlusanschi,VladSpoiala,SilviaMarcu,UniversityPolitehnicaofBucharest, ComputerScienceandEngineeringDepartment,Romania Website:http://cluster.grid.pub.ro/

ShortDescription
Thetopicofanalyzingaerialandsatelliteimagesforthepurposeofextractingusefulfeatureshasalwaysbeen

wiki.hp-see.eu/index.php/EagleEye

1/11

6/2/13

EagleEye - HP-SEE Wiki

aninterestingareaofresearchinthefieldofmachinevision.Fromidentifyingterrainfeatureslikeforests, agriculturalland,waterwaysandanalyzingtheirevolutionovertime,tolocatingmanmadestructureslike roadsandbuildings,thepossibleapplicationsarenumerous.

ProblemsSolved
ThepurposeoftheapplicationistousetheCellB.E.hybridarchitecturetospeedupthetasks,byemploying relativelysimplealgorithmsyieldinggoodresults.Twodifferentsubtasksaretreated:identifyingstraightroads (basedontheHoughtransform),andterrainidentification(usingthetechniqueoftextureclassification).These techniquesgivegoodresultsandaresufficientlyintensivecomputationaltotakeadvantageofparallelization andCellB.E.acceleration.However,inordertoobtaingoodresults,powerfulcomputationallyintensive algorithmsmustbeused.Also,thelargedatasetsusuallyprocessedrequiresignificanttimeandcomputer resources.Toaddressthisproblem,parallelcomputingisemployed.Bysplittingtheloadonmultiplenodes, computationtimeisreducedand,dependingonthealgorithmsused,theapplicationcanscaleinanalmost linearfashion.TheIBMCellBroadbandEngine(CellB.E.)isusedasamiddlegroundbetweenthetwo categoriesofgeneralpurposeCPUsanddedicatedsignalprocessors.IthasonePowerProcessorElement (PPE)and8SynergisticProcessorElements(SPEs).TheSPEsareoptimizedforrunningcomputeintensive singleinstruction,multipledata(SIMD)applications.ByconvertingtheprocessingalgorithmstotheCellB.E. SIMDarchitectureandrunningthemonits8SPEs,asignificantspeedupisachievedascomparedtoageneral purposeX86CPU.ThedownsideisthatinordertotakeadvantageoftheCellB.E.capabilitiestheoriginal codecannotjustberecompiled,butthealgorithmmustalsobeadaptedtothenewarchitecture.Thisisusually notatrivialmatterandtakesasignificantamountoftimeandengineering.

ScientificandSocialImpact
Theapplicationwillallowforautomaticdetectionandclassificationoffeaturesinlargedatasetsofhigh resolutionsatelliteimages.Theanalysisofsatelliteimageswiththeabilitytofeatureslikeforests,agricultural land,andwaterwayswillallowforthedevelopmentofapplicationswithsignificantlyimprovedcapabilities.

Collaborations
RomanianNationalMeteorologicalAgency:http://www.meteoromania.ro/index.php?id=0&lang=en

Beneficiaries
RomanianNationalMeteorologicalAgency:http://www.meteoromania.ro/index.php?id=0&lang=en

Numberofusers
12

DevelopmentPlan

wiki.hp-see.eu/index.php/EagleEye

2/11

6/2/13

EagleEye - HP-SEE Wiki

Concept:M109.2010. Startofalphastage:M1M5.10.201002.2011 Startofbetastage:M5M7.0205.2011 Startoftestingstage:M7M9.0507.2011 Startofdeploymentstage:M9M12.0709.2011 Startofproductionstage:M12M24.10.201108.2013

ResourceRequirements
Numberofcoresrequiredforasinglerun:224 MinimumRAM/corerequired:2GB/Core Storagespaceduringasinglerun:5070GB Longtermdatastorage:70100GB Totalcorehoursrequired:700000.

TechnicalFeaturesandHPSEEImplementation
Neededdevelopmenttoolsandcompilers:Eclipse3.6.1,Gcc4.6.0 Neededdebuggers:SunStudio12.1,IntelVTuneAmplifierXE Neededprofilers:Scalasca1.3.2 Neededparallelprogramminglibraries:Cell/B.E.SDK3.1,PThreds,MPI2.0(OpenMPI1.5.3),GPU ProgrammingCUDA/OpenCL Neededlibraries:OpenCV2.3.1 Mainparallelcode:Featureextractioncode,3DVisualizationCode Pre/postprocessingcode:None Primaryprogramminglanguage:C/C++

UsageExample
Thefirstalgorithmfromwhichwestartedcanbesplitupintofourparts:applyingamedianfilteronthe originalimage,grayscaleconversion,applyingCannyedgedetectionontheblurredblackandwhiteimageand applyingtheHoughtransformontheimageresultedfromcannyedgedetection.Theresultisasetofline segmentsrepresentingpossibleroadsthatgetmappedontotheoriginalimage.Theexecutionflowispresented inthefollowingpicture:

wiki.hp-see.eu/index.php/EagleEye

3/11

6/2/13

EagleEye - HP-SEE Wiki

AnimprovedimplementationadaptstheCannyEdgeDetectorthresholdsbasedontheinputimages.The medianfiltersizeisbetween5and13withafixedstepoftwo.Also,theHoughtransformparametersare derivedinverysimplemannerfromthemedianfiltersize:segmentsizeisfiltersizeplus5,whilemaximum segmentdistanceis2(staticassignment).Also,thecriteriafunctionforselectingandlinkingsegmentsinthe Houghtransformstillhassomehardcodedparameters.TheSegmentSelectionsteponlyfiltersasmallnumber offalsepositives.Linkingroadsegmentsthatarefarapartisdifficultinthisstagebecauseofthelargenumber offalsepositivesobtainedfromtheHoughtransformstep.Also,ametricforlinkingroadsegmentsand filteringoutlinesbetweenfieldsthatarecloserseemsdifficulttoachieveatthispoint.Theimprovedalgorithm isdisplayedinthefollowingdiagram:

wiki.hp-see.eu/index.php/EagleEye

4/11

6/2/13

EagleEye - HP-SEE Wiki

Examplesofprocessedimagesemployingtheimprovedalgorithmaregivenbelow:

wiki.hp-see.eu/index.php/EagleEye

5/11

6/2/13

EagleEye - HP-SEE Wiki

Ascanbeseen,therearestillsomefalsepositivesandsomerecognitionissuetobesolvedbyourdevelopment team.

InfrastructureUsage
Homesystem:NCITCluster Appliedforaccesson:09.2010. Accessgrantedon:09.2010.

wiki.hp-see.eu/index.php/EagleEye

6/11

6/2/13

EagleEye - HP-SEE Wiki

Achievedscalability:224cores. Accessedproductionsystems:1 Appliedforaccesson:09.2010. Accessgrantedon:09.2010. Achievedscalability:224cores. Portingactivities:Completed. Scalabilitystudies:Theenvisagedscalabilityof224coreswasachieved.

RunningonSeveralHPSEECentres
Benchmarkingactivitiesandresults:Duetothesensitivenatureofthedatathatisanalyzed,wecannot runourapplicationonotherHPSEECentres. Otherissues:None.

AchievedResults
Therecognitionandextractionoffeatureslikecontourlines,roads,forestcoverandtextfromscanned topographicalmapsposesaproblemduetothepresenceofcomplextexturedbackgroundsandinformation layersoverlaidoneontopoftheother.Coloranalysisisalsocomplicatedbythepoorqualityoftheimages producedbythescannerandtheuseofditheringinthemapprintingprocess.Furthermore,wedevelopa systemthatextractstheinformationcontainedintopographicmapsandgeneratesseparatelayersforthe differenttypesoffeaturesthesemapspresent.Averyimportantaspectofinformationextractionfrom topographicmapsisrepresentedbytheabilitytoidentifyregionsoftextandcorrectlyrecognizethecharacter information.Asampletopographicmapisgivenbelow:

Givenacolorrastermap,theaimofourmethodistoproduceautomaticallyavectorizedrepresentationofthe textuallayeritcontains.Theproposedmethodisdividedintofourmainsteps:
wiki.hp-see.eu/index.php/EagleEye 7/11

6/2/13

EagleEye - HP-SEE Wiki

1. Mapsegmentationmustfirstturntheinputcolormapintoabinarymapinwhichcharactersareisolated fromotherfeaturesandcharacters. 2. Inthecomponentanalysisstep,connectedcomponentsaregeneratedandfiltered. 3. Then,stringsarecreatedbygroupingcloseconnectedcomponentswithsimilarproperties. 4. Finally,detectedstringsarerecognizedbyanOCRbeforebeingcheckedandwrittenintoatextfile. Thechartflowofthefullprocessisdepictedinthefollowingfigure:

ForoptimalresultswecombinedtheoutputofthesetwofiltersusingtheCannyfilterasamaskforthefirst RGBcolorbasedselectionfilter.Inthefigurebellowthefirstimageistheoriginalimage,thesecondisthe outputofRGBcolorselectfilter,thethirdoneisoutputfromtheCannyfilterandthelastoneshowsthe combinedresult.Inthefollowingpicturewepresentexampleofprocessingbrownandblackcolorcontours:

Anexampleofhowtheresultsofthecitydetectionalgorithmarepresentedinthefollowingfigure.The detectedcitiesaremarkedusingredrectangles.Thefourredcirclesmarkthesearcharea.Toreducethe amountoftheimagethatissearchedinthefirsttwomarkingphaseswedetecttheblackborderwhich

wiki.hp-see.eu/index.php/EagleEye

8/11

6/2/13

EagleEye - HP-SEE Wiki

surroundsallthemapsandonlysearchinsidetheblacksquare.

TheparallelizationstrategyemployedcurrentlyinEagleEyeisshownhere:

Foratotalnumberof4workerthreadsefficiencydropsdownto95%intheworstcase(2masterswith2 workerthreadspermaster),whilethebestperformanceinthiscaseisobtainedusing4masterswithoneworker threadpermaster.For8totalworkerthreadsefficiencydropsabitmoregoingtothe9497%range.Foratotal of16workerthreadswegetasignificantperformancedropfortwooftheconfigurations,whilefortheother oneefficiencyisstillover90%.Thiscouldhavetwopossiblecauses.Firstly,theaveragenumberofimages processedbyeachworkerthreadgoesdownfrom10(8totalworkers)tofive(16totalworkers).Giventhatit ispossibleforsomeoftheworkerthreadstoprocessmorethantheirshareofimagessomeoftheworker threadsmightbeidlewhileothersareprocessingthelastsetofimages.Thiscausesperformanceproblemsthat increasealongwiththenumberoftotalworkerthreads,butcanbeavoidedbyusingamuchlargernumberof inputimagesthanworkerthreads.ThesecondcauseisrelatedtoI/Ooperations.Whenprocessingthefirstset ofimagesthethreadswillreadtheimagesintomemoryatthesametime.ThismeanssimultaneousmultipleI/O operations.Withtheincreaseinthetotalnumberofworkerthreadsmorestressisputonthefilesystemandit couldbecomeabottleneckasI/Orequestsmightbecomeserializedthusdecreasingperformance.Giventhat thetimeittakestoprocessanimagehasa1015%variationfromimagetoimagetheworkerthreads

wiki.hp-see.eu/index.php/EagleEye

9/11

6/2/13

EagleEye - HP-SEE Wiki

desynchronizeafterprocessingafewimagesandtheI/Obottleneckislesslikelytooccurlateron.The obtainedspeedup,dependingonthenumberofprocesses/threadsisdepictedinthefollowinggraph.

Publications
TowardsefficientvideocompressionusingscalablevectorgraphicsontheCell/B.E.,A.Sandu,E. Slusanschi,A.Murarasu,A.Serban,A.Herisanu,T.Stoenescu,InternationalConferenceonSoftware Engineering,IWMSE'10:Proceedingsofthe3rdInternationalWorkshoponMulticoreSoftware Engineering,CapeTown,SouthAfrica,2010,pag.2631.ISBN:9781605589640. CellGAFageneticalgorithmsframeworkfortheCellBroadbandEngine,M.Petcu,C.Raianu,E. Slusanschi,Proceedingsofthe2010IEEE6thInternationalConferenceonIntelligentComputer CommunicationandProcessing,ClujNapoca,Romania,ISBN:9781424482283,2010. ParallelNumericalSimulationsinAerodynamics,MariusPoke,E.Slusanschi,DamianPodareanu, AlexandruHerisanu,inProceedingsofthe18thInternationalConferenceonControlSystemsand ComputerScience(CSCS18),May,2011. AirflowSimulatorHeatTransferComputerSimulationsoftheNCITClusterDatacenter,A.Stroe,E. Slusanschi,A.Stroe,S.Posea,inProceedingsofthe18thInternationalConferenceonControlSystems andComputerScience(CSCS18),May,2011. MappingdataminingalgorithmsonaGPUarchitecture:Astudy,A.Gainaru,S.TrausanMatu,E. Slusanschi,inProceedingsofthe19thInternationalSymposiumonMethodologiesforIntelligent Systems,Warsaw,Poland,June2011. OptimizingParallelCFDSimulationsof2DCompressibleFlows,AnaSima,E.Slusanschi,toappear inProceedingsofthe2012IEEE14thInternationalSymposiumonSymbolicandNumericAlgorithms forScientificComputing(SYNASC2012),inTimisoara,Romania,September2012.

ForeseenActivities
ThedetectionalgorithmsthatareimplementedsofarintheEagleEyeframeworkhavethefollowing limitations:

wiki.hp-see.eu/index.php/EagleEye

10/11

6/2/13

EagleEye - HP-SEE Wiki

Thesizeofthemedianfilteristhesameregardlessofthecontentsoftheinputimage ThesizeoftheGaussianfilterusedintheCannyEdgeDetectorisstatic ThetwothresholdsinCannyedgedetectionarealsostatic TheparametersusedintheHoughtransform(minimalsegmentdistance,maximumsegmentsize) arealsostatic ThecriteriabywhichthesegmentsarechosenandlinkedintheHoughtransformalsousessome staticvalues Thereisalargenumberoffalsepositivesusuallylinesbetweenfieldswithdifferentcolorsare alsomarkedasroadsroadsthathaveasmallwidtharenotproperlydetected Becauseoftheselimitationsweareactivelydevelopinganalgorithmthatdynamicallyadaptssomeofthe previoushardcodedparameterswithrespecttoimagecontentandalsotriestodomorefilteringoffalse positives. Anumberofimprovementsarealsoforeseenforthe3DvieweroftheEagleEyeapplication: Fasterloadingofimagesifpossibleleadingtoarealtimeexperience Improvementsofthecommunicationprotocolsemployedinthe3Dviewer Retrievedfrom"http://wiki.hpsee.eu/index.php/EagleEye" Thispagewaslastmodifiedon10March2013,at23:13.

wiki.hp-see.eu/index.php/EagleEye

11/11