Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing...

4
Fraunhofer IIS Use Case Polarization Image Processing System 2017/01/12 Novel polarization image sensor and camera system developed at Fraunhofer IIS Polarization: physical property of light (like wavelength and intensity), but not perceivable to humans Used in industrial applications like quality monitoring in glass or carbon fibre production Medical applications are currently in research Currently, PC software for image processing is available; image analysis is highly application dependent and customer specific Software development in the traditional way: Matlab simulation, conversion to C/C++, optimization for target architecture, debugging, profiling… ARGO workflow will drastically reduce time-to-market (factor of 3...5 expected) In the future, parts of the algorithm will be implemented on embedded systems (inside the camera) Keywords: Worst case execution time, embedded system, safety critical, model based design This project has received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No 688131

Transcript of Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing...

Page 1: Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing system is used as test case in the ARGO project • Testcase increment 1 contains

FraunhoferIISUseCasePolarizationImageProcessingSystem2017/01/12

• NovelpolarizationimagesensorandcamerasystemdevelopedatFraunhoferIIS• Polarization:physicalpropertyoflight(likewavelengthandintensity),butnot

perceivabletohumans• Usedinindustrialapplicationslikequalitymonitoringinglassorcarbonfibre

production• Medicalapplicationsarecurrentlyinresearch• Currently,PCsoftwareforimageprocessingisavailable;imageanalysisishighly

applicationdependentandcustomerspecific• Softwaredevelopmentinthetraditionalway:Matlabsimulation,conversionto

C/C++,optimizationfortargetarchitecture,debugging,profiling…• ARGOworkflowwilldrasticallyreducetime-to-market(factorof3...5expected)• Inthefuture,partsofthealgorithmwillbeimplementedonembeddedsystems

(insidethecamera)Keywords:Worstcaseexecutiontime,embeddedsystem,safetycritical,modelbaseddesignThisprojecthasreceivedfundingfromtheEuropeanUnion’sHorizon2020researchandinnovationprogrammeundergrantagreementNo688131

Page 2: Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing system is used as test case in the ARGO project • Testcase increment 1 contains

ChallengesPolarizationimageprocessingsystemisusedastestcaseintheARGOproject

• Testcaseincrement1containsmostcommonprocessingsteps(commontoalmostallapplications)

• Testcase2willcontaincomputationintensiveenhancementsandapplicationspecificprocessingsteps.Morechallengingw.r.t.WCETconstraints

Solution

• ModelintheLoop:SimulationPC• HardwareintheLoop:ARGOplatform

Phase1:Infrastructurebuildupandtest:

• ImplementScilabmodelandinfrastructuresoftware,hardwaresetup• Recordshortsequencesofrawdata(=testdata)fromthepolarizationcamera

(~2000framespersequence,~50sec)• ProcesstestdataintheScilabPIPSmodel,eachresultinginaAOMPandDOLP

sequence(=referencedata)Phase2:ModelintheLooptest

• Transmitpreviouslyrecordedtestdatasequencesvia EthernetframewisetoasimulationPC(alsorunningthePIPSmodel)andreceiveprocessedframes

• CompareresultsfromsimulationPCtoreferencedata.Theymustbeexactlyidentical.

Page 3: Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing system is used as test case in the ARGO project • Testcase increment 1 contains

• NoWCETconstraintsapplicableinthisphasePhase3:Hardwareinthelooptest:(byendoftestcase1)

• TransmittestdatasequencesviaEthernetframewisetotheARGOtargethardware(runningthecompiled andWCET-optimizedPIPSmodel)andreceiveprocessedframes.

• Useincreasingframeratesforstressingthetargetsystem.• Resultsfromthetargetshouldbeidenticaltoreferencedataexceptforround-off

effectscausedbyarithmeticprecisiononthetarget.

DetailsoftheScilabPIPSModelItcoversthemostcommonstepsusedinalmosteverypolarizationimagingapplication.

OutlookforTestcaseIncrement2• Polynomialbasedpixellinearizationforhigherprecision(Note:cameramustbe

seenasameasuringinstrumentratherthanavisualimagesource)

Page 4: Polarization Image Processing System - Scilab · 2018. 10. 20. · Polarization image processing system is used as test case in the ARGO project • Testcase increment 1 contains

• Temperaturecompensation• Applicationspecificprocessing,e.g.ATN(apperenttempernumber)• Enhanceddenoising(↔unweightenedframeaveraging)• Edge-awarepixelinterpolation(↔simpleneighbouraveraging)

ResultsWhatisthebenefitweexpectfromARGO?

• Drasticallyreducedtime-to-market• Reducednumberofiterationsinsoftwaredevelopmentcausedbyerrornous

C-Conversionofsimulationcode• Higherperformanceofresultingimplemenationduetoautomatic

parallelizationandWCETawareness→Moreapplicationareas• Mucheasiermigrationtoothertargetplatforms,i.e.embeddeddevices

Example:ModelintheLoopusingRaspberryPiassimulationplatfom

Moreinfoshttps://www.iis.fraunhofer.de/en/ff/bsy/tech/kameratechnik/polarisationskamera.htmlhttp://scilab.io/use-cases/real-time-embedded-systems-require-higher-performance/