SlideShare una empresa de Scribd logo
1 de 14
INTRODUCTION TO
OPENCV AND MATLAB                           Module   2

       © roboVITics | Mayank Prasad, 2012            1
OUTLINE

   Introduction to OpenCV and MATLAB
   Why OpenCV?
   Installing and Running OpenCV & MATLAB in Windows
   Hello World with images using OpenCV and MATLAB




                        © roboVITics | Mayank Prasad, 2012   2
WHAT IS OPENCV ?

 OpenCV (Open Source Computer
  Vision Librar y) is a library of
  programming functions mainly
  aimed at real-time computer
  vision
 Developed by Intel, and now
  supported by Willow Garage and
  Itseez
 It is free for use under the open
  source BSD license
 The library is cross-platform. It
  focuses mainly on real -time
  image processing.

                         © roboVITics | Mayank Prasad, 2012   3
WHAT IS MATLAB ?

 MATLAB (matrix laboratory) is
  a numerical computing environment
  and 4G programming language
 Developed by MathWorks, MATLAB
 Allows matrix manipulations, plotting
  of functions and data, implementation
  of algorithms, creation of user
  interfaces, and interfacing with
  programs written in other
  languages, including C, C++, Java, and F
  ortran.
 Several toolboxes used for engineering
  tasks
 Image Processing Toolbox used here
                        © roboVITics | Mayank Prasad, 2012   4
WHY CHOOSE OPENCV?

   Specific – built exclusively for IP applications
   Speed – at least 4-5 times faster than other interfaces
   Ef ficiency – uses less system resources
   Optimized – highly optimized routines available
   Cross Platform – supports C, C++, python
   Open Source – open source and free of cost




                          © roboVITics | Mayank Prasad, 2012   5
Our People
                                              will help
     INSTALLING AND                           you out.
                                              Please
RUNNING OPENCV AND                            refer to
                                              the
             MATLAB                           supporting
                                              document
                                              shared in
                                              the folder



         © roboVITics | Mayank Prasad, 2012           6
INSTALLING MATLAB

Installation
 Run the setup file
 Click „Yes‟ or „Next‟ wherever necessary ;)
 Provide the license key and the license file when asked for
 Click „Finish‟, reboot your system, and you are good to go!

Now run it
 Now double click on the MATLAB R2011a icon on your desktop
 You should see the MATLAB command window window in front
  of you!




                        © roboVITics | Mayank Prasad, 2012      7
CONFIGURING OPENCV

 Install the superpack version of OpenCV provided.
 You can download the latest version from Sourceforge.
 Installation will merely extract all the build files into a folder.
 Copy that folder into C:  drive and rename it exactly as
  “OpenCV2.3.1”
 Open Visual Studio C++. Download and install it if you don‟t
  have it.
 Next open the text file provided during the workshop named
  “Config OpenCV”
 Follow the instructions given there. The instructions are for
  configuring OpenCV2.3.1 in Windows with Visual C++ IDE.



                          © roboVITics | Mayank Prasad, 2012        8
Hello
HELLO WORLD                           World with
                                      Images




 © roboVITics | Mayank Prasad, 2012            9
HELLO WORLD WITH IMAGES

 Hello World is the simplest application that you can build
  using any programming languages.
 When learning C, it is displaying some text on the screen.
 In case of images, it will be displaying an image on the screen
 Just do as your instructor is doing in front of you.
 Algorithm is as smooth as butter!
   Initialize everything
   Load an image
   Show it in a window




                            © roboVITics | Mayank Prasad, 2012   10
PROGRAMMING                            Related to C
    CONCEPTS




  © roboVITics | Mayank Prasad, 2012             11
C++ PROGRAMMING BASICS – REVISITED

  Nature of the Code
      Code, Files, Compile, Executable
  Variables and Data Types                                           These are the
  Simple Types                                                       concepts that you
      int, float, char, ASCII, bool/boolean, string, byte, long      will require while
    Arrays                                                           programming in
    Type-Casting                                                     OpenCV. So revise
    Operators                                                        them!
    Control Statements
      if-else, for, while, do-while, continue, break
  Functions
        Defining and Declaring Functions
        Passing parameters/arguments
        Naming a function
        Function Overloading
    Structures and Structure Variables
    Classes and Objects
    Scope
    Pointers
                                 © roboVITics | Mayank Prasad, 2012                    12
DELVING DEEPER INTO OPENCV
                           UP NEXT
                                                 Module   3

            © roboVITics | Mayank Prasad, 2012            13
CONTACTS

 Mayank Prasad
      President, roboVITi cs
      mayank@roboviti cs.in
 Akshat Wahi
      Asst. Project Manager, roboVITi cs
      +91 909 250 3053
      akshat@core.robovitics.in
 Akash Kashyap
      President, TEC – The Electronics Club of VIT
      akash130791@gmail .com




                           © roboVITics | Mayank Prasad, 2012   14

Más contenido relacionado

La actualidad más candente

blueMarine photographic workflow with Java
blueMarine photographic workflow with JavablueMarine photographic workflow with Java
blueMarine photographic workflow with Java
Fabrizio Giudici
 

La actualidad más candente (11)

Java & J2EE Struts with Hibernate Framework
Java & J2EE Struts with Hibernate FrameworkJava & J2EE Struts with Hibernate Framework
Java & J2EE Struts with Hibernate Framework
 
JavaFX 2 Using the Spring Framework
JavaFX 2 Using the Spring FrameworkJavaFX 2 Using the Spring Framework
JavaFX 2 Using the Spring Framework
 
The complete-beginners-guide-to-react dyrr
The complete-beginners-guide-to-react dyrrThe complete-beginners-guide-to-react dyrr
The complete-beginners-guide-to-react dyrr
 
Design pattern
Design patternDesign pattern
Design pattern
 
LUGOD Raspberry Pi Hacking
LUGOD Raspberry Pi HackingLUGOD Raspberry Pi Hacking
LUGOD Raspberry Pi Hacking
 
An introduction to Java 9 & Its Features
An introduction to Java 9 & Its FeaturesAn introduction to Java 9 & Its Features
An introduction to Java 9 & Its Features
 
What's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.xWhat's New in NetBeans IDE 7.x
What's New in NetBeans IDE 7.x
 
Modules all the way down: OSGi and the Java Platform Module System
Modules all the way down: OSGi and the Java Platform Module SystemModules all the way down: OSGi and the Java Platform Module System
Modules all the way down: OSGi and the Java Platform Module System
 
Migrating to java 9 modules
Migrating to java 9 modulesMigrating to java 9 modules
Migrating to java 9 modules
 
blueMarine photographic workflow with Java
blueMarine photographic workflow with JavablueMarine photographic workflow with Java
blueMarine photographic workflow with Java
 
How's relevant JMeter to me - DevConf (Letterkenny)
How's relevant JMeter to me - DevConf (Letterkenny)How's relevant JMeter to me - DevConf (Letterkenny)
How's relevant JMeter to me - DevConf (Letterkenny)
 

Destacado

Download-manuals-training-trainingmodulefor hymo-strainers (1)
 Download-manuals-training-trainingmodulefor hymo-strainers (1) Download-manuals-training-trainingmodulefor hymo-strainers (1)
Download-manuals-training-trainingmodulefor hymo-strainers (1)
hydrologyproject0
 
Arm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_armArm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_arm
Prashant Ahire
 
Acknowledgment
AcknowledgmentAcknowledgment
Acknowledgment
Asama Kiss
 
A basic introduction to open cv for image processing
A basic introduction to open cv for image processingA basic introduction to open cv for image processing
A basic introduction to open cv for image processing
Chu Lam
 
Projeto Jornal Escolar Wilson De Almeida
Projeto Jornal Escolar   Wilson De AlmeidaProjeto Jornal Escolar   Wilson De Almeida
Projeto Jornal Escolar Wilson De Almeida
Ana Claudia
 

Destacado (20)

Session 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian MalbeufSession 2: SQL Server 2012 with Christian Malbeuf
Session 2: SQL Server 2012 with Christian Malbeuf
 
Download-manuals-training-trainingmodulefor hymo-strainers (1)
 Download-manuals-training-trainingmodulefor hymo-strainers (1) Download-manuals-training-trainingmodulefor hymo-strainers (1)
Download-manuals-training-trainingmodulefor hymo-strainers (1)
 
Myro and OpenCV
Myro and OpenCVMyro and OpenCV
Myro and OpenCV
 
Acknowledgment
AcknowledgmentAcknowledgment
Acknowledgment
 
OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012OpenCV @ Droidcon 2012
OpenCV @ Droidcon 2012
 
RoboCV Module 4: Image Processing Techniques using OpenCV
RoboCV Module 4: Image Processing Techniques using OpenCVRoboCV Module 4: Image Processing Techniques using OpenCV
RoboCV Module 4: Image Processing Techniques using OpenCV
 
Getting started with open cv in raspberry pi
Getting started with open cv in raspberry piGetting started with open cv in raspberry pi
Getting started with open cv in raspberry pi
 
Using openCV on Raspberry Pi
Using openCV on Raspberry PiUsing openCV on Raspberry Pi
Using openCV on Raspberry Pi
 
Acknowledgment
AcknowledgmentAcknowledgment
Acknowledgment
 
Arm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_armArm cortex-m3 by-joe_bungo_arm
Arm cortex-m3 by-joe_bungo_arm
 
Acknowledgment
AcknowledgmentAcknowledgment
Acknowledgment
 
A basic introduction to open cv for image processing
A basic introduction to open cv for image processingA basic introduction to open cv for image processing
A basic introduction to open cv for image processing
 
OpenCV Introduction
OpenCV IntroductionOpenCV Introduction
OpenCV Introduction
 
Radar 2009 a 15 parameter estimation and tracking part 1
Radar 2009 a 15 parameter estimation and tracking part 1Radar 2009 a 15 parameter estimation and tracking part 1
Radar 2009 a 15 parameter estimation and tracking part 1
 
Image Processing with OpenCV
Image Processing with OpenCVImage Processing with OpenCV
Image Processing with OpenCV
 
Projeto Jornal Escolar Wilson De Almeida
Projeto Jornal Escolar   Wilson De AlmeidaProjeto Jornal Escolar   Wilson De Almeida
Projeto Jornal Escolar Wilson De Almeida
 
ARM CORTEX M3 PPT
ARM CORTEX M3 PPTARM CORTEX M3 PPT
ARM CORTEX M3 PPT
 
Q4.11: ARM Architecture
Q4.11: ARM ArchitectureQ4.11: ARM Architecture
Q4.11: ARM Architecture
 
Acknowledgements
AcknowledgementsAcknowledgements
Acknowledgements
 
Sample Acknowledgement of Project Report
Sample Acknowledgement of Project ReportSample Acknowledgement of Project Report
Sample Acknowledgement of Project Report
 

Similar a RoboCV Module 2: Introduction to OpenCV and MATLAB

Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)
Pratima Parida
 
Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)
Pratima Parida
 
Introduction to Laravel 4, Developer Conference - Digital World 2014
Introduction to Laravel 4, Developer Conference - Digital World 2014Introduction to Laravel 4, Developer Conference - Digital World 2014
Introduction to Laravel 4, Developer Conference - Digital World 2014
Mozammel Haque
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
Igor Anishchenko
 

Similar a RoboCV Module 2: Introduction to OpenCV and MATLAB (20)

Triple E class DevOps with Hudson, Maven, Kokki/Multiconf and PyDev
Triple E class DevOps with Hudson, Maven, Kokki/Multiconf and PyDevTriple E class DevOps with Hudson, Maven, Kokki/Multiconf and PyDev
Triple E class DevOps with Hudson, Maven, Kokki/Multiconf and PyDev
 
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDevTriple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
Triple-E’class Continuous Delivery with Hudson, Maven, Kokki and PyDev
 
(java2days) Is the Future of Java Cloudy?
(java2days) Is the Future of Java Cloudy?(java2days) Is the Future of Java Cloudy?
(java2days) Is the Future of Java Cloudy?
 
DevOps@Morpho for ParisDevOps - 2nd of December 2014
DevOps@Morpho for ParisDevOps - 2nd of December 2014DevOps@Morpho for ParisDevOps - 2nd of December 2014
DevOps@Morpho for ParisDevOps - 2nd of December 2014
 
DevOps With Chef and Azure
DevOps With Chef and AzureDevOps With Chef and Azure
DevOps With Chef and Azure
 
MODULE_1_The History and Evolution of Java.pptx
MODULE_1_The History and Evolution of Java.pptxMODULE_1_The History and Evolution of Java.pptx
MODULE_1_The History and Evolution of Java.pptx
 
SE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-ToolsSE2018_Lec-22_-Continuous-Integration-Tools
SE2018_Lec-22_-Continuous-Integration-Tools
 
Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)
 
Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)Java Semimar Slide (Cetpa)
Java Semimar Slide (Cetpa)
 
Java Programming (M&M)
Java Programming (M&M)Java Programming (M&M)
Java Programming (M&M)
 
Introduction to Laravel 4, Developer Conference - Digital World 2014
Introduction to Laravel 4, Developer Conference - Digital World 2014Introduction to Laravel 4, Developer Conference - Digital World 2014
Introduction to Laravel 4, Developer Conference - Digital World 2014
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
 
Overview of PaaS: Java experience
Overview of PaaS: Java experienceOverview of PaaS: Java experience
Overview of PaaS: Java experience
 
198970820 p-oooooooooo
198970820 p-oooooooooo198970820 p-oooooooooo
198970820 p-oooooooooo
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps Paradigm
 
Java interview question
Java interview questionJava interview question
Java interview question
 
Accelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and MicroservicesAccelerate your Application Delivery with DevOps and Microservices
Accelerate your Application Delivery with DevOps and Microservices
 
Javantura v4 - Support SpringBoot application development lifecycle using Ora...
Javantura v4 - Support SpringBoot application development lifecycle using Ora...Javantura v4 - Support SpringBoot application development lifecycle using Ora...
Javantura v4 - Support SpringBoot application development lifecycle using Ora...
 
How to Thrive on REST/WebSocket-Based Microservices
How to Thrive on REST/WebSocket-Based MicroservicesHow to Thrive on REST/WebSocket-Based Microservices
How to Thrive on REST/WebSocket-Based Microservices
 

Más de roboVITics club

Más de roboVITics club (7)

How to make a Line Follower Robot
How to make a Line Follower RobotHow to make a Line Follower Robot
How to make a Line Follower Robot
 
RoboCV Module 5: Contours using OpenCV
RoboCV Module 5: Contours using OpenCVRoboCV Module 5: Contours using OpenCV
RoboCV Module 5: Contours using OpenCV
 
RoboCV Module 3: Delving Deeper into OpenCV
RoboCV Module 3: Delving Deeper into OpenCVRoboCV Module 3: Delving Deeper into OpenCV
RoboCV Module 3: Delving Deeper into OpenCV
 
RoboCV Module 1: Introduction to Machine Vision
RoboCV Module 1: Introduction to Machine VisionRoboCV Module 1: Introduction to Machine Vision
RoboCV Module 1: Introduction to Machine Vision
 
RoboCV - Demo Session Slides
RoboCV - Demo Session SlidesRoboCV - Demo Session Slides
RoboCV - Demo Session Slides
 
ROBO-SUMO Event Details v1.2
ROBO-SUMO Event Details v1.2ROBO-SUMO Event Details v1.2
ROBO-SUMO Event Details v1.2
 
VIT-EDC Problem Statement v1.2
VIT-EDC Problem Statement v1.2VIT-EDC Problem Statement v1.2
VIT-EDC Problem Statement v1.2
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

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...
 
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...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
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...
 
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
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
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
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
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
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

RoboCV Module 2: Introduction to OpenCV and MATLAB

  • 1. INTRODUCTION TO OPENCV AND MATLAB Module 2 © roboVITics | Mayank Prasad, 2012 1
  • 2. OUTLINE  Introduction to OpenCV and MATLAB  Why OpenCV?  Installing and Running OpenCV & MATLAB in Windows  Hello World with images using OpenCV and MATLAB © roboVITics | Mayank Prasad, 2012 2
  • 3. WHAT IS OPENCV ?  OpenCV (Open Source Computer Vision Librar y) is a library of programming functions mainly aimed at real-time computer vision  Developed by Intel, and now supported by Willow Garage and Itseez  It is free for use under the open source BSD license  The library is cross-platform. It focuses mainly on real -time image processing. © roboVITics | Mayank Prasad, 2012 3
  • 4. WHAT IS MATLAB ?  MATLAB (matrix laboratory) is a numerical computing environment and 4G programming language  Developed by MathWorks, MATLAB  Allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages, including C, C++, Java, and F ortran.  Several toolboxes used for engineering tasks  Image Processing Toolbox used here © roboVITics | Mayank Prasad, 2012 4
  • 5. WHY CHOOSE OPENCV?  Specific – built exclusively for IP applications  Speed – at least 4-5 times faster than other interfaces  Ef ficiency – uses less system resources  Optimized – highly optimized routines available  Cross Platform – supports C, C++, python  Open Source – open source and free of cost © roboVITics | Mayank Prasad, 2012 5
  • 6. Our People will help INSTALLING AND you out. Please RUNNING OPENCV AND refer to the MATLAB supporting document shared in the folder © roboVITics | Mayank Prasad, 2012 6
  • 7. INSTALLING MATLAB Installation  Run the setup file  Click „Yes‟ or „Next‟ wherever necessary ;)  Provide the license key and the license file when asked for  Click „Finish‟, reboot your system, and you are good to go! Now run it  Now double click on the MATLAB R2011a icon on your desktop  You should see the MATLAB command window window in front of you! © roboVITics | Mayank Prasad, 2012 7
  • 8. CONFIGURING OPENCV  Install the superpack version of OpenCV provided.  You can download the latest version from Sourceforge.  Installation will merely extract all the build files into a folder.  Copy that folder into C: drive and rename it exactly as “OpenCV2.3.1”  Open Visual Studio C++. Download and install it if you don‟t have it.  Next open the text file provided during the workshop named “Config OpenCV”  Follow the instructions given there. The instructions are for configuring OpenCV2.3.1 in Windows with Visual C++ IDE. © roboVITics | Mayank Prasad, 2012 8
  • 9. Hello HELLO WORLD World with Images © roboVITics | Mayank Prasad, 2012 9
  • 10. HELLO WORLD WITH IMAGES  Hello World is the simplest application that you can build using any programming languages.  When learning C, it is displaying some text on the screen.  In case of images, it will be displaying an image on the screen  Just do as your instructor is doing in front of you.  Algorithm is as smooth as butter!  Initialize everything  Load an image  Show it in a window © roboVITics | Mayank Prasad, 2012 10
  • 11. PROGRAMMING Related to C CONCEPTS © roboVITics | Mayank Prasad, 2012 11
  • 12. C++ PROGRAMMING BASICS – REVISITED  Nature of the Code  Code, Files, Compile, Executable  Variables and Data Types These are the  Simple Types concepts that you  int, float, char, ASCII, bool/boolean, string, byte, long will require while  Arrays programming in  Type-Casting OpenCV. So revise  Operators them!  Control Statements  if-else, for, while, do-while, continue, break  Functions  Defining and Declaring Functions  Passing parameters/arguments  Naming a function  Function Overloading  Structures and Structure Variables  Classes and Objects  Scope  Pointers © roboVITics | Mayank Prasad, 2012 12
  • 13. DELVING DEEPER INTO OPENCV UP NEXT Module 3 © roboVITics | Mayank Prasad, 2012 13
  • 14. CONTACTS  Mayank Prasad President, roboVITi cs mayank@roboviti cs.in  Akshat Wahi Asst. Project Manager, roboVITi cs +91 909 250 3053 akshat@core.robovitics.in  Akash Kashyap President, TEC – The Electronics Club of VIT akash130791@gmail .com © roboVITics | Mayank Prasad, 2012 14