SlideShare une entreprise Scribd logo
1  sur  21
Computer Vision and Apps

         Antonio Radesca
        Developer-Architect
              MCPD
         antrad@libero.it
 antonio@nextgenerationteam.com
          Fiore Rosalba
        www.fiorerosalba.biz
                                  1
Computer Vision
• Transformation of data from a still or
  video camera into either a decision or a
  new representation.
• Data - > “the camera is mounted in a car”
  or “laser range fi nder indicates an object
  is 1 meter away”.
• Decision -> “there is a person in this
  scene” or “there are 14 tumor cells on
  this slide”
• New representation -> turning a color
  image into a grayscale image
4/14/2013           Confidential            2
Machine prospective
• A 2d Image of a 3d object.
• No definite way to reconstruct the 3d
  image.




4/14/2013          Confidential           3
Machine prospective
• Images are corrupted by noise and
  distortions.
• (weather, lighting, reflections, move
  ments)




4/14/2013        Confidential             4
OpenCV
• OpenCV (Open Source Computer
  Vision)
• library of programming functions for real
  time computer vision. (computer
  efficiency)
• Written in optimized C and C++
• Runs in windows, Linux and MAC OS.
• Can develop in
  C, C++, python, ruby, matlab,Java,.NET

4/14/2013          Confidential               5
OpenCV




4/14/2013      Confidential   6
OpenCV




4/14/2013      Confidential   7
Applications
• Human-Computer Interaction (HCI)
• Object Identification, Segmentation and
  Recognition
• Face Recognition
• Motion Tracking, Ego Motion, Motion
  Understanding
• Stereo and Multi-Camera Calibration and
  Depth Computation
• Mobile Robotics
4/14/2013         Confidential          8
Who uses
• license for OpenCV has been structured
    such that you can build a commercial
    product using all or part of OpenCV.
• You are under no obligation to
    opensource
• large user community that includes
    people from major companies
    (IBM, Microsoft
    , Intel, SONY, Siemens, and Google, to
    name only a few) and research centers
    (such as
    Stanford, MIT, CMU, Cambridge, and
4/14/2013             Confidential           9

    INRIA).
Using OpenCV
• Use static libraries
• Compile OpenCV
• Download sample from GITHUB




4/14/2013         Confidential   10
Basic Struct
typedef struct _IplImage
{
int nSize;int ID;int nChannels;int alphaChannel;int depth;
char colorModel[4];
char channel
int dataOrder;
int origin;
int align;
int width;int height;
struct _IplROI *roi;
struct _IplImage *maskROI;
void *imageId;
struct _IplTileInfo *tileInf
int imageSize;
char *imageData;
int widthStep;
char *imageDataOrigin;
}
IplImage;

4/14/2013                              Confidential          11
Some Code...




4/14/2013         Confidential   12
Image inversion sample




4/14/2013   Confidential   13
Erosion
•   Characteristics of Erosion
•   Erosion generally decreases the sizes of objects and removes
    small anomalies by subtracting objects with a radius smaller
    than the structuring element.
•   With grayscale images, erosion reduces the brightness (and
    therefore the size) of bright objects on a dark background by
    taking the neighborhood minimum when passing the structuring
    element over the image.
•   With binary images, erosion completely removes objects smaller
    than the structuring element and removes perimeter pixels from
    larger image objects.




4/14/2013                    Confidential                       14
cvErode
•   void cvErode( const CvArr* src, CvArr* dst, IplConvKernel*
    element=NULL, int iterations=1 );
•   If it is NULL, a 3×3 rectangular structuring element is used.
    iterationsNumber of times erosion is applied. The function
    cvErode erodes the source image using the specified structuring
    element that determines the shape of a pixel neighborhood over
    which the minimum is taken:
•   dst=erode(src,element): dst(x,y)=min((x',y') in element))src(x+x',y+y')
    The function supports the in-place mode. Erosion can be applied
    several (iterations) times. In case of color image each channel is
    processed independently.




4/14/2013                        Confidential                            15
Dilation
• Characteristics of Dilation
• Dilation generally increases the sizes of objects, filling in
  holes and broken areas, and connecting areas that are
  separated by spaces smaller than the size of the
  structuring element.
• With grayscale images, dilation increases the brightness
  of objects by taking the neighborhood maximum when
  passing the structuring element over the image.
• With binary images, dilation connects areas that are
  separated by spaces smaller than the structuring element
  and adds pixels to the perimeter of each image object.




4/14/2013                   Confidential                      16
Dilate
•   void cvDilate( const CvArr* src, CvArr* dst, IplConvKernel*
    element=NULL, int iterations=1 );
•   If it is NULL, a 3×3 rectangular structuring element is used.
    iterationsNumber of times erosion is applied. The function
    cvDilate dilates the source image using the specified structuring
    element that determines the shape of a pixel neighborhood over
    which the maximum is taken:
•   dst=dilate(src,element): dst(x,y)=max((x',y') in element))src(x+x',y+y')
    The function supports the in-place mode. Dilation can be applied
    several (iterations) times. In case of color image each channel is
    processed independently.




4/14/2013                        Confidential                             17
Edge Detection (Canny Algorithm)




     4/14/2013   Confidential   18
FaceDetection




4/14/2013          Confidential   19
Resources
• Download Open CV -
  http://sourceforge.net/projects/open
  cvlibrary/
• Install guide and tutorials -
  http://opencv.willowgarage.com/wiki
  /
• IDE – eclipse, .net , VC++


4/14/2013       Confidential         20
Thanks 
• Questions? 




                   21

Contenu connexe

Tendances

An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...Giulio Bigliardi
 
Two Dimensional Image Reconstruction Algorithms
Two Dimensional Image Reconstruction AlgorithmsTwo Dimensional Image Reconstruction Algorithms
Two Dimensional Image Reconstruction Algorithmsmastersrihari
 
Viva3D Stereo Vision user manual en 2016-06
Viva3D Stereo Vision user manual en 2016-06Viva3D Stereo Vision user manual en 2016-06
Viva3D Stereo Vision user manual en 2016-06Robin Colclough
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priorsmustafa sarac
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationAnish Patel
 
Teleimmersion
TeleimmersionTeleimmersion
Teleimmersionstudent
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationDouglas Lanman
 
Object based image analysis tools for opticks
Object based image analysis tools for opticksObject based image analysis tools for opticks
Object based image analysis tools for opticksMohit Kumar
 
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...Sergio Orts-Escolano
 
Build Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: IntroductionBuild Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: IntroductionDouglas Lanman
 
Unsupervised Learning of Object Landmarks through Conditional Image Generation
Unsupervised Learning of Object Landmarks through Conditional Image GenerationUnsupervised Learning of Object Landmarks through Conditional Image Generation
Unsupervised Learning of Object Landmarks through Conditional Image Generation哲东 郑
 
image segmentation
image segmentationimage segmentation
image segmentationarpanmankar
 
Cvpr2010 open source vision software, intro and training part viii point clou...
Cvpr2010 open source vision software, intro and training part viii point clou...Cvpr2010 open source vision software, intro and training part viii point clou...
Cvpr2010 open source vision software, intro and training part viii point clou...antiw
 
Introduction to Computer Vision
Introduction to Computer VisionIntroduction to Computer Vision
Introduction to Computer VisionComponica LLC
 
Image Processing with OpenCV
Image Processing with OpenCVImage Processing with OpenCV
Image Processing with OpenCVdebayanin
 

Tendances (20)

An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...An Open Source solution for Three-Dimensional documentation: archaeological a...
An Open Source solution for Three-Dimensional documentation: archaeological a...
 
RWDA
RWDARWDA
RWDA
 
3D scanner using kinect
3D scanner using kinect3D scanner using kinect
3D scanner using kinect
 
Two Dimensional Image Reconstruction Algorithms
Two Dimensional Image Reconstruction AlgorithmsTwo Dimensional Image Reconstruction Algorithms
Two Dimensional Image Reconstruction Algorithms
 
Viva3D Stereo Vision user manual en 2016-06
Viva3D Stereo Vision user manual en 2016-06Viva3D Stereo Vision user manual en 2016-06
Viva3D Stereo Vision user manual en 2016-06
 
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
Lecture 02   yasutaka furukawa - 3 d reconstruction with priorsLecture 02   yasutaka furukawa - 3 d reconstruction with priors
Lecture 02 yasutaka furukawa - 3 d reconstruction with priors
 
ANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentationANISH_and_DR.DANIEL_augmented_reality_presentation
ANISH_and_DR.DANIEL_augmented_reality_presentation
 
Teleimmersion
TeleimmersionTeleimmersion
Teleimmersion
 
Stereo vision
Stereo visionStereo vision
Stereo vision
 
Chap1
Chap1Chap1
Chap1
 
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D TriangulationBuild Your Own 3D Scanner: The Mathematics of 3D Triangulation
Build Your Own 3D Scanner: The Mathematics of 3D Triangulation
 
Multiview Imaging HW Overview
Multiview Imaging HW OverviewMultiview Imaging HW Overview
Multiview Imaging HW Overview
 
Object based image analysis tools for opticks
Object based image analysis tools for opticksObject based image analysis tools for opticks
Object based image analysis tools for opticks
 
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...
A Three-Dimensional Representation method for Noisy Point Clouds based on Gro...
 
Build Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: IntroductionBuild Your Own 3D Scanner: Introduction
Build Your Own 3D Scanner: Introduction
 
Unsupervised Learning of Object Landmarks through Conditional Image Generation
Unsupervised Learning of Object Landmarks through Conditional Image GenerationUnsupervised Learning of Object Landmarks through Conditional Image Generation
Unsupervised Learning of Object Landmarks through Conditional Image Generation
 
image segmentation
image segmentationimage segmentation
image segmentation
 
Cvpr2010 open source vision software, intro and training part viii point clou...
Cvpr2010 open source vision software, intro and training part viii point clou...Cvpr2010 open source vision software, intro and training part viii point clou...
Cvpr2010 open source vision software, intro and training part viii point clou...
 
Introduction to Computer Vision
Introduction to Computer VisionIntroduction to Computer Vision
Introduction to Computer Vision
 
Image Processing with OpenCV
Image Processing with OpenCVImage Processing with OpenCV
Image Processing with OpenCV
 

Similaire à Computer vision

Deep Learning AtoC with Image Perspective
Deep Learning AtoC with Image PerspectiveDeep Learning AtoC with Image Perspective
Deep Learning AtoC with Image PerspectiveDong Heon Cho
 
物件偵測與辨識技術
物件偵測與辨識技術物件偵測與辨識技術
物件偵測與辨識技術CHENHuiMei
 
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningMakine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningAli Alkan
 
Object detection with deep learning
Object detection with deep learningObject detection with deep learning
Object detection with deep learningSushant Shrivastava
 
3-d interpretation from single 2-d image III
3-d interpretation from single 2-d image III3-d interpretation from single 2-d image III
3-d interpretation from single 2-d image IIIYu Huang
 
dilating and eroding in open cv
dilating and eroding in open cvdilating and eroding in open cv
dilating and eroding in open cvSaeed Ullah
 
Introduction talk to Computer Vision
Introduction talk to Computer Vision Introduction talk to Computer Vision
Introduction talk to Computer Vision Chen Sagiv
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Lviv Startup Club
 
Automatic Building detection for satellite Images using IGV and DSM
Automatic Building detection for satellite Images using IGV and DSMAutomatic Building detection for satellite Images using IGV and DSM
Automatic Building detection for satellite Images using IGV and DSMAmit Raikar
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern PresentationDaniel Cahall
 
10.1109@ICCMC48092.2020.ICCMC-000167.pdf
10.1109@ICCMC48092.2020.ICCMC-000167.pdf10.1109@ICCMC48092.2020.ICCMC-000167.pdf
10.1109@ICCMC48092.2020.ICCMC-000167.pdfmokamojah
 
NMO IE-2 Activity Presentation.pptx
NMO IE-2 Activity Presentation.pptxNMO IE-2 Activity Presentation.pptx
NMO IE-2 Activity Presentation.pptxLEGENDARYTECHNICAL
 
Automated Face Detection System
Automated Face Detection SystemAutomated Face Detection System
Automated Face Detection SystemAbhiroop Ghatak
 
Convolution Neural Network (CNN)
Convolution Neural Network (CNN)Convolution Neural Network (CNN)
Convolution Neural Network (CNN)Suraj Aavula
 
Computer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonComputer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonAkash Satamkar
 
aip edge detection using sobel and canny methods
aip edge detection using sobel and canny methodsaip edge detection using sobel and canny methods
aip edge detection using sobel and canny methodsSaeed Ullah
 

Similaire à Computer vision (20)

Deep Learning AtoC with Image Perspective
Deep Learning AtoC with Image PerspectiveDeep Learning AtoC with Image Perspective
Deep Learning AtoC with Image Perspective
 
物件偵測與辨識技術
物件偵測與辨識技術物件偵測與辨識技術
物件偵測與辨識技術
 
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine LearningMakine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
Makine Öğrenmesi ile Görüntü Tanıma | Image Recognition using Machine Learning
 
Object detection with deep learning
Object detection with deep learningObject detection with deep learning
Object detection with deep learning
 
[DL輪読会]ClearGrasp
[DL輪読会]ClearGrasp[DL輪読会]ClearGrasp
[DL輪読会]ClearGrasp
 
3-d interpretation from single 2-d image III
3-d interpretation from single 2-d image III3-d interpretation from single 2-d image III
3-d interpretation from single 2-d image III
 
N046047780
N046047780N046047780
N046047780
 
dilating and eroding in open cv
dilating and eroding in open cvdilating and eroding in open cv
dilating and eroding in open cv
 
Introduction talk to Computer Vision
Introduction talk to Computer Vision Introduction talk to Computer Vision
Introduction talk to Computer Vision
 
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
Данило Ульянич “C89 OpenGL for ARM microcontrollers on Cortex-M. Basic functi...
 
Automatic Building detection for satellite Images using IGV and DSM
Automatic Building detection for satellite Images using IGV and DSMAutomatic Building detection for satellite Images using IGV and DSM
Automatic Building detection for satellite Images using IGV and DSM
 
Cahall Final Intern Presentation
Cahall Final Intern PresentationCahall Final Intern Presentation
Cahall Final Intern Presentation
 
10.1109@ICCMC48092.2020.ICCMC-000167.pdf
10.1109@ICCMC48092.2020.ICCMC-000167.pdf10.1109@ICCMC48092.2020.ICCMC-000167.pdf
10.1109@ICCMC48092.2020.ICCMC-000167.pdf
 
kanimozhi2019.pdf
kanimozhi2019.pdfkanimozhi2019.pdf
kanimozhi2019.pdf
 
NMO IE-2 Activity Presentation.pptx
NMO IE-2 Activity Presentation.pptxNMO IE-2 Activity Presentation.pptx
NMO IE-2 Activity Presentation.pptx
 
Automated Face Detection System
Automated Face Detection SystemAutomated Face Detection System
Automated Face Detection System
 
Computer Vision Introduction
Computer Vision IntroductionComputer Vision Introduction
Computer Vision Introduction
 
Convolution Neural Network (CNN)
Convolution Neural Network (CNN)Convolution Neural Network (CNN)
Convolution Neural Network (CNN)
 
Computer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonComputer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and Python
 
aip edge detection using sobel and canny methods
aip edge detection using sobel and canny methodsaip edge detection using sobel and canny methods
aip edge detection using sobel and canny methods
 

Dernier

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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 

Dernier (20)

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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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)
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 

Computer vision

  • 1. Computer Vision and Apps Antonio Radesca Developer-Architect MCPD antrad@libero.it antonio@nextgenerationteam.com Fiore Rosalba www.fiorerosalba.biz 1
  • 2. Computer Vision • Transformation of data from a still or video camera into either a decision or a new representation. • Data - > “the camera is mounted in a car” or “laser range fi nder indicates an object is 1 meter away”. • Decision -> “there is a person in this scene” or “there are 14 tumor cells on this slide” • New representation -> turning a color image into a grayscale image 4/14/2013 Confidential 2
  • 3. Machine prospective • A 2d Image of a 3d object. • No definite way to reconstruct the 3d image. 4/14/2013 Confidential 3
  • 4. Machine prospective • Images are corrupted by noise and distortions. • (weather, lighting, reflections, move ments) 4/14/2013 Confidential 4
  • 5. OpenCV • OpenCV (Open Source Computer Vision) • library of programming functions for real time computer vision. (computer efficiency) • Written in optimized C and C++ • Runs in windows, Linux and MAC OS. • Can develop in C, C++, python, ruby, matlab,Java,.NET 4/14/2013 Confidential 5
  • 6. OpenCV 4/14/2013 Confidential 6
  • 7. OpenCV 4/14/2013 Confidential 7
  • 8. Applications • Human-Computer Interaction (HCI) • Object Identification, Segmentation and Recognition • Face Recognition • Motion Tracking, Ego Motion, Motion Understanding • Stereo and Multi-Camera Calibration and Depth Computation • Mobile Robotics 4/14/2013 Confidential 8
  • 9. Who uses • license for OpenCV has been structured such that you can build a commercial product using all or part of OpenCV. • You are under no obligation to opensource • large user community that includes people from major companies (IBM, Microsoft , Intel, SONY, Siemens, and Google, to name only a few) and research centers (such as Stanford, MIT, CMU, Cambridge, and 4/14/2013 Confidential 9 INRIA).
  • 10. Using OpenCV • Use static libraries • Compile OpenCV • Download sample from GITHUB 4/14/2013 Confidential 10
  • 11. Basic Struct typedef struct _IplImage { int nSize;int ID;int nChannels;int alphaChannel;int depth; char colorModel[4]; char channel int dataOrder; int origin; int align; int width;int height; struct _IplROI *roi; struct _IplImage *maskROI; void *imageId; struct _IplTileInfo *tileInf int imageSize; char *imageData; int widthStep; char *imageDataOrigin; } IplImage; 4/14/2013 Confidential 11
  • 12. Some Code... 4/14/2013 Confidential 12
  • 14. Erosion • Characteristics of Erosion • Erosion generally decreases the sizes of objects and removes small anomalies by subtracting objects with a radius smaller than the structuring element. • With grayscale images, erosion reduces the brightness (and therefore the size) of bright objects on a dark background by taking the neighborhood minimum when passing the structuring element over the image. • With binary images, erosion completely removes objects smaller than the structuring element and removes perimeter pixels from larger image objects. 4/14/2013 Confidential 14
  • 15. cvErode • void cvErode( const CvArr* src, CvArr* dst, IplConvKernel* element=NULL, int iterations=1 ); • If it is NULL, a 3×3 rectangular structuring element is used. iterationsNumber of times erosion is applied. The function cvErode erodes the source image using the specified structuring element that determines the shape of a pixel neighborhood over which the minimum is taken: • dst=erode(src,element): dst(x,y)=min((x',y') in element))src(x+x',y+y') The function supports the in-place mode. Erosion can be applied several (iterations) times. In case of color image each channel is processed independently. 4/14/2013 Confidential 15
  • 16. Dilation • Characteristics of Dilation • Dilation generally increases the sizes of objects, filling in holes and broken areas, and connecting areas that are separated by spaces smaller than the size of the structuring element. • With grayscale images, dilation increases the brightness of objects by taking the neighborhood maximum when passing the structuring element over the image. • With binary images, dilation connects areas that are separated by spaces smaller than the structuring element and adds pixels to the perimeter of each image object. 4/14/2013 Confidential 16
  • 17. Dilate • void cvDilate( const CvArr* src, CvArr* dst, IplConvKernel* element=NULL, int iterations=1 ); • If it is NULL, a 3×3 rectangular structuring element is used. iterationsNumber of times erosion is applied. The function cvDilate dilates the source image using the specified structuring element that determines the shape of a pixel neighborhood over which the maximum is taken: • dst=dilate(src,element): dst(x,y)=max((x',y') in element))src(x+x',y+y') The function supports the in-place mode. Dilation can be applied several (iterations) times. In case of color image each channel is processed independently. 4/14/2013 Confidential 17
  • 18. Edge Detection (Canny Algorithm) 4/14/2013 Confidential 18
  • 19. FaceDetection 4/14/2013 Confidential 19
  • 20. Resources • Download Open CV - http://sourceforge.net/projects/open cvlibrary/ • Install guide and tutorials - http://opencv.willowgarage.com/wiki / • IDE – eclipse, .net , VC++ 4/14/2013 Confidential 20