SlideShare a Scribd company logo
1 of 17
Download to read offline
USING THE NOKIA
IMAGING SDK
LUMIA APP LABS #15
Berthier Lemieux
Technology Wizard
Experts in imaging algorithms
Acquired by Nokia, 24 July 2012
Their technology drives:
Nokia Smart Camera
Nokia Cinemagraph
Nokia Creative studio
SCALADO
Really fast preview of any region of the image
Complete set of base filters and effects (52 filters).
Combine them to generate more complex ones
Highest performance and low memory consumption
through RAJPEG technology (>15 patents)
Cropping and JPEG compression parameter control
NOKIA IMAGING SDK
Filter Effects,
simple illustration
of basics
Example projects
Real-time Filter
Demo, live
viewfinder stream
processing
Filter Explorer,
complex illustration
of various usage
scenarios
 Apps developed with the SDK can be used on
any Windows Phone 8, including non-Nokia,
devices
 The library is a WinPRT library. Routines are
available via a C# interface as well as a
C/C++ interface
 Nokia Imaging SDK License Agreement: Free
to use, attribution
GOOD TO KNOW
List of filters and effects I
List of filters and effects II
List of filters and effects III
• Step 1: Include Nokia Imaging SDK Libraries into your project
• Step 2 : Create EditingSession
• Step 3 : Create and add filters to EditingSession
• Step 4 : Use asynchronous methods RenderToImageAsync or
RenderToJpegAsync to produce the final processed image
General overview of required steps
• Use NuGet to install the SDK libraries.
• Finalise the installation by :
• Making sure thatin the Project’s Configuration Manager, only the X86 and ARM platformsare
listed. The Any CPU platform should be removed
• Save your project in VisualStudio
• With an external editor (notepad, for example), edit the .csproj file to support both X86 and ARM
platforms. In the <HintPath> elements, replace “X86” by “$(Platform)”.
Step 1: Nokia Imaging SDK Libraries
Language Compiled to Runs in a virtual
machine ?
Processor
architecture
dependant?
Managed
code
C#, VB Intermediate
Language (MSIL)
Yes (CLR) No
Native code C++ Machine language No Yes
PROCESSOR ARCHITECTURES
Target Processor
architecture type
Emulator X86
Phone ARM
You don’t need to know/understand
this to use the SDK!
Consider this as FYI.
• Create an Imaging SDK EditingSession using a compressed or uncompressed image:
Step 2: Create EditingSession
EditingSession session = new EditingSession(jpegData);
• From a WriteableBitmap:
EditingSession session = new EditingSession(sourceBitmap);
• From a JPEG in a IBuffer:
EditingSession session = await CreateEditingSessionAsync(stream);
• From a Stream (from PhotoChooserTask):
• Use FilterFactory to create filters and effects
• Use EditingSession methods to add filters and effects:
Step 3: Create and add filters and effects
session.AddFilter(FilterFactory.CreateCartoonFilter(true));
session.AddFilter(FilterFactory.CreateFogFilter());
• You can also use FilterGroup to add several filters and effects in one call
You can render the processed image to:
• A XAML Image control:
await session.RenderToImageAsync(FilteredImage);
• A WriteableBitmap :
await session.RenderToWriteableBitmapAsync(FilteredBitmap);
• An IBuffer :
IBuffer jpegOut = await session.RenderToJpegAsync();
Step 4: Produce final processed image
You found an error in the SDK, have suggestions, need help?
Nokia Imaging discussion board: http://nokia.ly/DiBoImg
You have developped an app with the SDK?
We’d love to hear about it. Tellus by sending a mailat developer-
relations.marketing@nokia.com
Documentation and code samples
• Imaging in the Lumia Developer’s Library: http://nokia.ly/WP_lib_img
• Nokia Imaging SDK: http://www.developer.nokia.com/imaging
RESOURCES
THANK YOU!
NOKIA
IMAGING WIKI
COMPETITION
2013Q3
Write a great tutorial, guide or an article with code which
shows how to use the Nokia Imaging SDK or Camera and any
other Windows Phone APIs related to imaging in useful,
imaginative and innovative ways and/or provide the best
feedback on the Nokia Imaging SDK.
developer.nokia.com/Community/Wiki/

More Related Content

What's hot

Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-pptSrijib Roy
 
Custom Android App Development – Web Animation India
Custom Android App Development – Web Animation IndiaCustom Android App Development – Web Animation India
Custom Android App Development – Web Animation IndiaMarion Welch
 
Android Web app
Android Web app Android Web app
Android Web app Sumit Kumar
 
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...Himanshu Sharan
 
Best Tools for Business
Best Tools for BusinessBest Tools for Business
Best Tools for BusinessNick Landry
 
Project presentation (Loginradius SDK for Android)
Project presentation (Loginradius SDK for Android)Project presentation (Loginradius SDK for Android)
Project presentation (Loginradius SDK for Android)shwetarathi Rathi
 
Introduction to Android Programming
Introduction to Android ProgrammingIntroduction to Android Programming
Introduction to Android Programming'Zamin Mammadov
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project PresentationLaxmi Kant Yadav
 
Intel XDK in Brief
Intel XDK in BriefIntel XDK in Brief
Intel XDK in BriefCamilo Corea
 
Android development
Android developmentAndroid development
Android developmentRaynax668
 
Android 6.0 Marshmallow - Everything you need to know !
Android 6.0 Marshmallow - Everything you need to know !Android 6.0 Marshmallow - Everything you need to know !
Android 6.0 Marshmallow - Everything you need to know !Edureka!
 
Android Workshop Part 1
Android Workshop Part 1Android Workshop Part 1
Android Workshop Part 1NAILBITER
 
Android study jams 1
Android study jams 1Android study jams 1
Android study jams 1NancyMariaAS
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming BasicsEueung Mulyana
 
Building Visual Studio LightSwitch Application
Building Visual Studio LightSwitch ApplicationBuilding Visual Studio LightSwitch Application
Building Visual Studio LightSwitch ApplicationKunal Chowdhury
 

What's hot (20)

Basic android-ppt
Basic android-pptBasic android-ppt
Basic android-ppt
 
Gdsc android introduction
Gdsc android introductionGdsc android introduction
Gdsc android introduction
 
Custom Android App Development – Web Animation India
Custom Android App Development – Web Animation IndiaCustom Android App Development – Web Animation India
Custom Android App Development – Web Animation India
 
Android Web app
Android Web app Android Web app
Android Web app
 
Android studio ppt
Android studio pptAndroid studio ppt
Android studio ppt
 
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...
Multi-platform Compatibility of HTML5 by developing simple HTML5 based game(M...
 
Best Tools for Business
Best Tools for BusinessBest Tools for Business
Best Tools for Business
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
Project presentation (Loginradius SDK for Android)
Project presentation (Loginradius SDK for Android)Project presentation (Loginradius SDK for Android)
Project presentation (Loginradius SDK for Android)
 
Introduction to Android Programming
Introduction to Android ProgrammingIntroduction to Android Programming
Introduction to Android Programming
 
Android Project Presentation
Android Project PresentationAndroid Project Presentation
Android Project Presentation
 
Android Training
Android TrainingAndroid Training
Android Training
 
Intel XDK in Brief
Intel XDK in BriefIntel XDK in Brief
Intel XDK in Brief
 
Android development
Android developmentAndroid development
Android development
 
Android 6.0 Marshmallow - Everything you need to know !
Android 6.0 Marshmallow - Everything you need to know !Android 6.0 Marshmallow - Everything you need to know !
Android 6.0 Marshmallow - Everything you need to know !
 
Android Workshop Part 1
Android Workshop Part 1Android Workshop Part 1
Android Workshop Part 1
 
PPT Companion to Android
PPT Companion to AndroidPPT Companion to Android
PPT Companion to Android
 
Android study jams 1
Android study jams 1Android study jams 1
Android study jams 1
 
Android Programming Basics
Android Programming BasicsAndroid Programming Basics
Android Programming Basics
 
Building Visual Studio LightSwitch Application
Building Visual Studio LightSwitch ApplicationBuilding Visual Studio LightSwitch Application
Building Visual Studio LightSwitch Application
 

Similar to LUMIA APP LAB #15: USING THE NOKIA IMAGING SDK

LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0Microsoft Mobile Developer
 
DSDP Mobile Tools for Java Webinar
DSDP Mobile Tools for Java WebinarDSDP Mobile Tools for Java Webinar
DSDP Mobile Tools for Java Webinargustavoeliano
 
DSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and NoteworthyDSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and Noteworthydiegomadruga
 
DSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and NoteworthyDSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and Noteworthygustavoeliano
 
A new way to inspire and stimulate learning
A new way to inspire and stimulate learningA new way to inspire and stimulate learning
A new way to inspire and stimulate learningLee Stott
 
7.imaging on windows phone
7.imaging on windows phone7.imaging on windows phone
7.imaging on windows phoneNguyên Phạm
 
Microsoft IT Academy Summit 2011
Microsoft IT Academy Summit 2011Microsoft IT Academy Summit 2011
Microsoft IT Academy Summit 2011Lee Stott
 
Introduction to DL-BUILDER
Introduction to DL-BUILDERIntroduction to DL-BUILDER
Introduction to DL-BUILDERssuserc37b5e
 
A Tutorial On Ip 2
A Tutorial On Ip 2A Tutorial On Ip 2
A Tutorial On Ip 2ankuredkie
 
License Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCVLicense Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCVVishal Polley
 
Advanced Ruby Scripting For Sketch Up
Advanced Ruby Scripting For Sketch UpAdvanced Ruby Scripting For Sketch Up
Advanced Ruby Scripting For Sketch UpGoogleTecTalks
 
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...Luigi Francesco Cerfeda
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKDataLeader.io
 
Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth Pilli
 
Announcing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAnnouncing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAmazon Web Services
 

Similar to LUMIA APP LAB #15: USING THE NOKIA IMAGING SDK (20)

LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
LUMIA APP LABS #18: INTRODUCING NOKIA IMAGING SDK 1.0
 
Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1Lumia App Labs: Nokia Imaging SDK 1.1
Lumia App Labs: Nokia Imaging SDK 1.1
 
DSDP Mobile Tools for Java Webinar
DSDP Mobile Tools for Java WebinarDSDP Mobile Tools for Java Webinar
DSDP Mobile Tools for Java Webinar
 
DSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and NoteworthyDSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and Noteworthy
 
DSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and NoteworthyDSDP Mobile Tools for Java New and Noteworthy
DSDP Mobile Tools for Java New and Noteworthy
 
A new way to inspire and stimulate learning
A new way to inspire and stimulate learningA new way to inspire and stimulate learning
A new way to inspire and stimulate learning
 
SWT - Technical Deep Dive
SWT - Technical Deep DiveSWT - Technical Deep Dive
SWT - Technical Deep Dive
 
Selfie booth ppt
Selfie booth pptSelfie booth ppt
Selfie booth ppt
 
7.imaging on windows phone
7.imaging on windows phone7.imaging on windows phone
7.imaging on windows phone
 
Microsoft IT Academy Summit 2011
Microsoft IT Academy Summit 2011Microsoft IT Academy Summit 2011
Microsoft IT Academy Summit 2011
 
Introduction to DL-BUILDER
Introduction to DL-BUILDERIntroduction to DL-BUILDER
Introduction to DL-BUILDER
 
A Tutorial On Ip 2
A Tutorial On Ip 2A Tutorial On Ip 2
A Tutorial On Ip 2
 
10 gui 14
10 gui 1410 gui 14
10 gui 14
 
License Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCVLicense Plate Recognition System using Python and OpenCV
License Plate Recognition System using Python and OpenCV
 
Advanced Ruby Scripting For Sketch Up
Advanced Ruby Scripting For Sketch UpAdvanced Ruby Scripting For Sketch Up
Advanced Ruby Scripting For Sketch Up
 
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...
Workshop: Arduino for makers - Strumenti SW per la prototipazione elettronica...
 
Climberreport
ClimberreportClimberreport
Climberreport
 
Building Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDKBuilding Applications with the Microsoft Kinect SDK
Building Applications with the Microsoft Kinect SDK
 
Srikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latestSrikanth_PILLI_CV_latest
Srikanth_PILLI_CV_latest
 
Announcing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck TalksAnnouncing AWS CodeBuild - January 2017 Online Teck Talks
Announcing AWS CodeBuild - January 2017 Online Teck Talks
 

More from Microsoft Mobile Developer

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsMicrosoft Mobile Developer
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagMicrosoft Mobile Developer
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsMicrosoft Mobile Developer
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appMicrosoft Mobile Developer
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeMicrosoft Mobile Developer
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoMicrosoft Mobile Developer
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraMicrosoft Mobile Developer
 

More from Microsoft Mobile Developer (20)

Intro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and toolsIntro to Nokia X software platform 2.0 and tools
Intro to Nokia X software platform 2.0 and tools
 
Lumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK betaLumia App Labs: Lumia SensorCore SDK beta
Lumia App Labs: Lumia SensorCore SDK beta
 
Nokia Asha from idea to app - Imaging
Nokia Asha from idea to app - ImagingNokia Asha from idea to app - Imaging
Nokia Asha from idea to app - Imaging
 
Healthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia AshaHealthcare apps for Nokia X and Nokia Asha
Healthcare apps for Nokia X and Nokia Asha
 
Push notifications on Nokia X
Push notifications on Nokia XPush notifications on Nokia X
Push notifications on Nokia X
 
DIY Nokia Asha app usability studies
DIY Nokia Asha app usability studiesDIY Nokia Asha app usability studies
DIY Nokia Asha app usability studies
 
Lessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviewsLessons learned from Nokia X UI reviews
Lessons learned from Nokia X UI reviews
 
Location based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tagLocation based services for Nokia X and Nokia Asha using Geo2tag
Location based services for Nokia X and Nokia Asha using Geo2tag
 
HERE Maps for the Nokia X platform
HERE Maps for the Nokia X platformHERE Maps for the Nokia X platform
HERE Maps for the Nokia X platform
 
Nokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerationsNokia In-App Payment - UX considerations
Nokia In-App Payment - UX considerations
 
Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)Introduction to Nokia Asha SDK 1.2 (beta)
Introduction to Nokia Asha SDK 1.2 (beta)
 
UX considerations when porting to Nokia X
UX considerations when porting to Nokia XUX considerations when porting to Nokia X
UX considerations when porting to Nokia X
 
Kids' games and educational app design
Kids' games and educational app designKids' games and educational app design
Kids' games and educational app design
 
Nokia X: opportunities for developers
Nokia X: opportunities for developersNokia X: opportunities for developers
Nokia X: opportunities for developers
 
Intro to Nokia X software platform and tools
Intro to Nokia X software platform and toolsIntro to Nokia X software platform and tools
Intro to Nokia X software platform and tools
 
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultationsLumia App Labs: Lessons learned from 50 windows phone 8 design consultations
Lumia App Labs: Lessons learned from 50 windows phone 8 design consultations
 
Windows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra appWindows Phone 8 speech: parliamo con la nostra app
Windows Phone 8 speech: parliamo con la nostra app
 
La pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo storeLa pubblicazione di un'applicazione sullo store
La pubblicazione di un'applicazione sullo store
 
Il pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progettoIl pattern mvvm come strutturare al meglio il vostro progetto
Il pattern mvvm come strutturare al meglio il vostro progetto
 
Lens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocameraLens app trasformare il telefono in una fotocamera
Lens app trasformare il telefono in una fotocamera
 

Recently uploaded

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Recently uploaded (20)

04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

LUMIA APP LAB #15: USING THE NOKIA IMAGING SDK

  • 1. USING THE NOKIA IMAGING SDK LUMIA APP LABS #15 Berthier Lemieux Technology Wizard
  • 2. Experts in imaging algorithms Acquired by Nokia, 24 July 2012 Their technology drives: Nokia Smart Camera Nokia Cinemagraph Nokia Creative studio SCALADO
  • 3. Really fast preview of any region of the image Complete set of base filters and effects (52 filters). Combine them to generate more complex ones Highest performance and low memory consumption through RAJPEG technology (>15 patents) Cropping and JPEG compression parameter control NOKIA IMAGING SDK
  • 4. Filter Effects, simple illustration of basics Example projects Real-time Filter Demo, live viewfinder stream processing Filter Explorer, complex illustration of various usage scenarios
  • 5.  Apps developed with the SDK can be used on any Windows Phone 8, including non-Nokia, devices  The library is a WinPRT library. Routines are available via a C# interface as well as a C/C++ interface  Nokia Imaging SDK License Agreement: Free to use, attribution GOOD TO KNOW
  • 6. List of filters and effects I
  • 7. List of filters and effects II
  • 8. List of filters and effects III
  • 9. • Step 1: Include Nokia Imaging SDK Libraries into your project • Step 2 : Create EditingSession • Step 3 : Create and add filters to EditingSession • Step 4 : Use asynchronous methods RenderToImageAsync or RenderToJpegAsync to produce the final processed image General overview of required steps
  • 10. • Use NuGet to install the SDK libraries. • Finalise the installation by : • Making sure thatin the Project’s Configuration Manager, only the X86 and ARM platformsare listed. The Any CPU platform should be removed • Save your project in VisualStudio • With an external editor (notepad, for example), edit the .csproj file to support both X86 and ARM platforms. In the <HintPath> elements, replace “X86” by “$(Platform)”. Step 1: Nokia Imaging SDK Libraries
  • 11. Language Compiled to Runs in a virtual machine ? Processor architecture dependant? Managed code C#, VB Intermediate Language (MSIL) Yes (CLR) No Native code C++ Machine language No Yes PROCESSOR ARCHITECTURES Target Processor architecture type Emulator X86 Phone ARM You don’t need to know/understand this to use the SDK! Consider this as FYI.
  • 12. • Create an Imaging SDK EditingSession using a compressed or uncompressed image: Step 2: Create EditingSession EditingSession session = new EditingSession(jpegData); • From a WriteableBitmap: EditingSession session = new EditingSession(sourceBitmap); • From a JPEG in a IBuffer: EditingSession session = await CreateEditingSessionAsync(stream); • From a Stream (from PhotoChooserTask):
  • 13. • Use FilterFactory to create filters and effects • Use EditingSession methods to add filters and effects: Step 3: Create and add filters and effects session.AddFilter(FilterFactory.CreateCartoonFilter(true)); session.AddFilter(FilterFactory.CreateFogFilter()); • You can also use FilterGroup to add several filters and effects in one call
  • 14. You can render the processed image to: • A XAML Image control: await session.RenderToImageAsync(FilteredImage); • A WriteableBitmap : await session.RenderToWriteableBitmapAsync(FilteredBitmap); • An IBuffer : IBuffer jpegOut = await session.RenderToJpegAsync(); Step 4: Produce final processed image
  • 15. You found an error in the SDK, have suggestions, need help? Nokia Imaging discussion board: http://nokia.ly/DiBoImg You have developped an app with the SDK? We’d love to hear about it. Tellus by sending a mailat developer- relations.marketing@nokia.com Documentation and code samples • Imaging in the Lumia Developer’s Library: http://nokia.ly/WP_lib_img • Nokia Imaging SDK: http://www.developer.nokia.com/imaging RESOURCES
  • 17. NOKIA IMAGING WIKI COMPETITION 2013Q3 Write a great tutorial, guide or an article with code which shows how to use the Nokia Imaging SDK or Camera and any other Windows Phone APIs related to imaging in useful, imaginative and innovative ways and/or provide the best feedback on the Nokia Imaging SDK. developer.nokia.com/Community/Wiki/