SlideShare a Scribd company logo
1 of 31
LOGO
Supervisors:-
  - Prof. Dr. El- Sayed Mohammed El- Harbete.
  - Dr. Ahmed Gaweech.
Assistant:-
  - Amr Gamgoum.

Project Team:-
  - Sara Ezzat Lamey.
  - Christina Saweres Yousef.
  - Marim Tawfeeq Rabee.
  - Mina Mazooz Fares.
  - Mina Esam Kamal.
1.Over View.
2.Objectives.
3.Project Phases.
The description of our problem is how to convert the 2D image
  to 3D. Such conversions will open the door to visualize,
  navigating and simulating buildings and museums in 3D
  scene. In addition, it will help games developers to build their
  game environment models and walk into it. It will also help
  the movie's producer to build a 3D virtual location from a
  simple 2D image and then navigate into it according to the
  scenes of the movie.
1.Over View.
2.Objectives.
3.Project Phases.
Reviving image it into 3D model, and our output will be:-

   •An 3D model to let the user to navigation inside it.

   •A 3Ds file that contain the 3D model of the image that file will help the
   user to interact with the model.
1.Over View.
2.Objectives.
3.Project Phases.
SEGMENTATION

   Dividing the image into small regions according to their
   pixels intensity, that will help us to improve classification
   performance using segments (little classification data)
   instead of working pixel by pixel (large amount of data)
   And easily to extract the features form the segments.




               515684 Pixels                 Only 1049 Segments
SEGMENTATION (Problems)

• Selection of the Sigma (difference between colors in one Segment)
   • Large Sigma :- cause small number of segments with large
     regions but may be output one segment contains more than
     one class


        As shown :
           one segment contained 2 classes
               ( ground and vertical )
SEGMENTATION (Problems)

• Selection of the Sigma
   • Small Sigma :- cause large number of segments (slow the
     classification process) but this solve 2 large problems
      • Low probability that one segment
          found in 2 classes.

       • Determine type of the texture
         if was coarse or smooth
           As shown :
            the ground is coarse
SEGMENTATION (Performance of Algorithm)


• we used Flood Fill algorithm (Queue Linear Technique).

        Why ?

           • It achieves the desired output.
           • For image 844 X 611 Pixels it takes [6 – 11] Seconds
             with Sigma (30) .
CLASSIFICATION

 • In order To facilitate the 3D representation of the model
   in (Building aspect) we need to know where is the three
   Geometric Classes of the image ( Ground ,Vertical ,Sky).



 • Classifier will be able to help us to extract these
   classes from an input image.
CLASSIFICATION (Cont)

 After Segmentation phase we want to determine each segment belongs to
 which class (Sky, Vertical, Ground) .




     Sky                       Vertical                      Ground



                                                                         13
CLASSIFICATION (Cont)

 • Expected Classifier Output




           Input Image          Geometric Labels
CLASSIFICATION (Algorithm)
CLASSIFICATION (Feature Selection)

 • We select a powerful features in the classification for the segments such as :-

       Location :-
         We working with ( x , y)
         central position of the segment.
         (look at small red point)



       Color :-
         We working with three color channel ( R , G , B ) Mean color of the
         segment.
CLASSIFICATION (System Training)

• We also allow the user to train
our system against the new images
that we did not take it in our
consideration when selecting
the samples data using simple GUI


• As shown in figure :-

1. The user should point by the mouse
on the red target on the image then
     the feature vector will be created
        and He/she can add sample
        the selected samples.
CLASSIFICATION (System Training)

• The Training System also inform the user
 if the selected feature vector is target or
missed and also for select Geometric class.




    •    The user can also update system Data
          Set with the new samples of the new
            Images
CLASSIFICATION (Training Samples)

• For the KNN classifier we need to store training samples in such away we can
  retrieve it back and start processing on it using (File structure ,SQL Data Base,….).

• Here we using File structure with file name
  “DataSet.txt”

• Feature vector :-
[ CX , CY , MRed,MGreen,MBlue, Geometric Class ]
            EX:-
            [0.707,0.017,84,115,174,1]
            [0.711,0.543,138,139,140,2]
            [0.258,0.961,112,107,95,3]
•          Here in Geometric Class(
            1 : Refer to the Sky
             , 2: Refer to the Vertical
               , 3 : Refer to the Ground).


                                                                                          19   19
CLASSIFICATION (Our Classifier Output)




           Input Image                   Geometric Classes
CLASSIFICATION (Problems and Solutions)

• Location
   A problem that we can not face it in the color features because it is ranged from
    [0-255] but we face it in the location because the size of images (Width X Height) is
    not fixed but it’s different from image to another .

   Solution :-
      Normalize X , Y to the range from [0 - 1]
                NormalizedX = ( X / W )      ,          NormalizedY =( Y / H )

• Classifier accuracy
           Solution :-
            Increase classifier features and searching for other powerful ones.
            Try to choose other formula for calculation the distance between feature
                vector and samples data.
CLASSIFICATION (Next Phases)

 - After dividing the image into three classes(sky, vertical, ground) we will do
 another classification but only on the vertical, because the vertical class may
 contain objects like buildings so they may be in the right or in the left or in
 the center.




 Vertical
                               Right                      Left                     Center
VANISHING POINTS

 What … Vanishing Point?
    The single point where all the lines on the ground level seem to come
    together.

        Vanishing points can also refer to the point in the distance
        where the two verges of a road appear to converge.
VANISHING POINTS

          Why …

         1. This is often used to get the real depth inof the object
         2. This is often used to get the real height the image
             when navigate in the 3D model . parameters )
                     ( determining the camera
VANISHING POINTS
   How to get it ……



      1. Find the edges in the image (  Laplacian ).
      2. Take best threshold ( Convert the image to
         black & white).
      3. Apply Hough Transform to detect line Equations.
      4. From this Lines detect the vanishing point (most
         intersection).
VANISHING POINTS
   How to get it ……




                   110
VANISHING POINTS
   How to get it ……




     for all pixels in the image
        if the pixel (x,y) is an edge (white Pixel)
          for all the theta angles [0~180]
            Calculate rho for the pixel(x,y)
            increment that position(rho,theta)
            in the accumulator
            Show the hough space
            Find the highest values in the accumulator
VANISHING POINTS
   How to get it ……   All angles [0~180]
VANISHING POINTS
        How to get it ……




                    (next stage)

1- no there specific threshold to take the lines.
2- more than one intersection point.
• Creating the 3D Model (Finally)
     Cutting and Folding
        We construct a simple 3D model by making “cuts” and “folds” in the image
        based on the geometric labels (texture mapping).
3rd Seminar

More Related Content

What's hot

What's hot (17)

Image segmentation
Image segmentationImage segmentation
Image segmentation
 
COMPUTER GRAPHICS
COMPUTER GRAPHICSCOMPUTER GRAPHICS
COMPUTER GRAPHICS
 
Im seg04
Im seg04Im seg04
Im seg04
 
04 image enhancement edge detection
04 image enhancement edge detection04 image enhancement edge detection
04 image enhancement edge detection
 
Features image processing and Extaction
Features image processing and ExtactionFeatures image processing and Extaction
Features image processing and Extaction
 
GRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D GraphicsGRPHICS02 - Creating 3D Graphics
GRPHICS02 - Creating 3D Graphics
 
PPT s11-machine vision-s2
PPT s11-machine vision-s2PPT s11-machine vision-s2
PPT s11-machine vision-s2
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
2. filtering basics
2. filtering basics2. filtering basics
2. filtering basics
 
Video Segmentation
Video SegmentationVideo Segmentation
Video Segmentation
 
Feature detection and matching
Feature detection and matchingFeature detection and matching
Feature detection and matching
 
Image segmentation
Image segmentation Image segmentation
Image segmentation
 
GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
 
Image pre processing
Image pre processingImage pre processing
Image pre processing
 
Image segmentation
Image segmentation Image segmentation
Image segmentation
 
3 d autocad_2009
3 d autocad_20093 d autocad_2009
3 d autocad_2009
 
Lecture 7
Lecture 7Lecture 7
Lecture 7
 

Viewers also liked (9)

Nl Media
Nl MediaNl Media
Nl Media
 
APrIGF 2016 參與心得
APrIGF 2016 參與心得APrIGF 2016 參與心得
APrIGF 2016 參與心得
 
Friendship story3066
Friendship story3066Friendship story3066
Friendship story3066
 
Coco XO
Coco XO Coco XO
Coco XO
 
Our 1st Seminar
Our 1st SeminarOur 1st Seminar
Our 1st Seminar
 
2nd Sem Graduation Project
2nd Sem Graduation Project2nd Sem Graduation Project
2nd Sem Graduation Project
 
Christina saweres cv
Christina saweres cvChristina saweres cv
Christina saweres cv
 
3rd Seminar
3rd Seminar3rd Seminar
3rd Seminar
 
Sand stone2058
Sand stone2058Sand stone2058
Sand stone2058
 

Similar to 3rd Seminar

A (very brief) Introduction to Image Processing and 3D Printing with ImageJ
A (very brief) Introduction to Image Processing and 3D Printing with ImageJA (very brief) Introduction to Image Processing and 3D Printing with ImageJ
A (very brief) Introduction to Image Processing and 3D Printing with ImageJPaul Mignone, Ph.D
 
Image enhancement in the spatial domain1
Image enhancement in the spatial domain1Image enhancement in the spatial domain1
Image enhancement in the spatial domain1shabanam tamboli
 
Image Enhancement in the Spatial Domain1.ppt
Image Enhancement in the Spatial Domain1.pptImage Enhancement in the Spatial Domain1.ppt
Image Enhancement in the Spatial Domain1.pptShabanamTamboli1
 
Image enhancement ppt nal2
Image enhancement ppt nal2Image enhancement ppt nal2
Image enhancement ppt nal2Surabhi Ks
 
08 cie552 image_segmentation
08 cie552 image_segmentation08 cie552 image_segmentation
08 cie552 image_segmentationElsayed Hemayed
 
Dip digital image 3
Dip digital image 3Dip digital image 3
Dip digital image 3Shajun Nisha
 
DIP Notes Unit-1 PPT.pdf
DIP Notes Unit-1 PPT.pdfDIP Notes Unit-1 PPT.pdf
DIP Notes Unit-1 PPT.pdfGaurav Sharma
 
Image enhancement lecture
Image enhancement lectureImage enhancement lecture
Image enhancement lectureISRAR HUSSAIN
 
Lecture1_computer vision-2023.pdf
Lecture1_computer vision-2023.pdfLecture1_computer vision-2023.pdf
Lecture1_computer vision-2023.pdfssuserff72e4
 
DIP Notes Unit-1 PPT , engineering, computer Science
DIP Notes Unit-1 PPT , engineering, computer ScienceDIP Notes Unit-1 PPT , engineering, computer Science
DIP Notes Unit-1 PPT , engineering, computer Sciencebaaburao4200
 
05 contours seg_matching
05 contours seg_matching05 contours seg_matching
05 contours seg_matchingankit_ppt
 
Lecture 9&10 computer vision segmentation-no_task
Lecture 9&10 computer vision segmentation-no_taskLecture 9&10 computer vision segmentation-no_task
Lecture 9&10 computer vision segmentation-no_taskcairo university
 
Lecture 02 visualization and programming
Lecture 02   visualization and programmingLecture 02   visualization and programming
Lecture 02 visualization and programmingSmee Kaem Chann
 

Similar to 3rd Seminar (20)

ImSeg04.ppt
ImSeg04.pptImSeg04.ppt
ImSeg04.ppt
 
ImSeg04 (2).ppt
ImSeg04 (2).pptImSeg04 (2).ppt
ImSeg04 (2).ppt
 
A (very brief) Introduction to Image Processing and 3D Printing with ImageJ
A (very brief) Introduction to Image Processing and 3D Printing with ImageJA (very brief) Introduction to Image Processing and 3D Printing with ImageJ
A (very brief) Introduction to Image Processing and 3D Printing with ImageJ
 
Animation
AnimationAnimation
Animation
 
Image enhancement in the spatial domain1
Image enhancement in the spatial domain1Image enhancement in the spatial domain1
Image enhancement in the spatial domain1
 
Image Enhancement in the Spatial Domain1.ppt
Image Enhancement in the Spatial Domain1.pptImage Enhancement in the Spatial Domain1.ppt
Image Enhancement in the Spatial Domain1.ppt
 
Image enhancement ppt nal2
Image enhancement ppt nal2Image enhancement ppt nal2
Image enhancement ppt nal2
 
08 cie552 image_segmentation
08 cie552 image_segmentation08 cie552 image_segmentation
08 cie552 image_segmentation
 
Dip digital image 3
Dip digital image 3Dip digital image 3
Dip digital image 3
 
MATLAB & Image Processing
MATLAB & Image ProcessingMATLAB & Image Processing
MATLAB & Image Processing
 
DIP Notes Unit-1 PPT.pdf
DIP Notes Unit-1 PPT.pdfDIP Notes Unit-1 PPT.pdf
DIP Notes Unit-1 PPT.pdf
 
ACMP340.pptx
ACMP340.pptxACMP340.pptx
ACMP340.pptx
 
IMAGE SEGMENTATION.
IMAGE SEGMENTATION.IMAGE SEGMENTATION.
IMAGE SEGMENTATION.
 
Image enhancement lecture
Image enhancement lectureImage enhancement lecture
Image enhancement lecture
 
Lecture1_computer vision-2023.pdf
Lecture1_computer vision-2023.pdfLecture1_computer vision-2023.pdf
Lecture1_computer vision-2023.pdf
 
DIP Notes Unit-1 PPT , engineering, computer Science
DIP Notes Unit-1 PPT , engineering, computer ScienceDIP Notes Unit-1 PPT , engineering, computer Science
DIP Notes Unit-1 PPT , engineering, computer Science
 
Parking space detect
Parking space detectParking space detect
Parking space detect
 
05 contours seg_matching
05 contours seg_matching05 contours seg_matching
05 contours seg_matching
 
Lecture 9&10 computer vision segmentation-no_task
Lecture 9&10 computer vision segmentation-no_taskLecture 9&10 computer vision segmentation-no_task
Lecture 9&10 computer vision segmentation-no_task
 
Lecture 02 visualization and programming
Lecture 02   visualization and programmingLecture 02   visualization and programming
Lecture 02 visualization and programming
 

Recently uploaded

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 

Recently uploaded (20)

SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 

3rd Seminar

  • 2. Supervisors:- - Prof. Dr. El- Sayed Mohammed El- Harbete. - Dr. Ahmed Gaweech. Assistant:- - Amr Gamgoum. Project Team:- - Sara Ezzat Lamey. - Christina Saweres Yousef. - Marim Tawfeeq Rabee. - Mina Mazooz Fares. - Mina Esam Kamal.
  • 4. The description of our problem is how to convert the 2D image to 3D. Such conversions will open the door to visualize, navigating and simulating buildings and museums in 3D scene. In addition, it will help games developers to build their game environment models and walk into it. It will also help the movie's producer to build a 3D virtual location from a simple 2D image and then navigate into it according to the scenes of the movie.
  • 6. Reviving image it into 3D model, and our output will be:- •An 3D model to let the user to navigation inside it. •A 3Ds file that contain the 3D model of the image that file will help the user to interact with the model.
  • 8. SEGMENTATION Dividing the image into small regions according to their pixels intensity, that will help us to improve classification performance using segments (little classification data) instead of working pixel by pixel (large amount of data) And easily to extract the features form the segments. 515684 Pixels Only 1049 Segments
  • 9. SEGMENTATION (Problems) • Selection of the Sigma (difference between colors in one Segment) • Large Sigma :- cause small number of segments with large regions but may be output one segment contains more than one class  As shown : one segment contained 2 classes ( ground and vertical )
  • 10. SEGMENTATION (Problems) • Selection of the Sigma • Small Sigma :- cause large number of segments (slow the classification process) but this solve 2 large problems • Low probability that one segment found in 2 classes. • Determine type of the texture if was coarse or smooth  As shown : the ground is coarse
  • 11. SEGMENTATION (Performance of Algorithm) • we used Flood Fill algorithm (Queue Linear Technique).  Why ? • It achieves the desired output. • For image 844 X 611 Pixels it takes [6 – 11] Seconds with Sigma (30) .
  • 12. CLASSIFICATION • In order To facilitate the 3D representation of the model in (Building aspect) we need to know where is the three Geometric Classes of the image ( Ground ,Vertical ,Sky). • Classifier will be able to help us to extract these classes from an input image.
  • 13. CLASSIFICATION (Cont) After Segmentation phase we want to determine each segment belongs to which class (Sky, Vertical, Ground) . Sky Vertical Ground 13
  • 14. CLASSIFICATION (Cont) • Expected Classifier Output Input Image Geometric Labels
  • 16. CLASSIFICATION (Feature Selection) • We select a powerful features in the classification for the segments such as :-  Location :- We working with ( x , y) central position of the segment. (look at small red point)  Color :- We working with three color channel ( R , G , B ) Mean color of the segment.
  • 17. CLASSIFICATION (System Training) • We also allow the user to train our system against the new images that we did not take it in our consideration when selecting the samples data using simple GUI • As shown in figure :- 1. The user should point by the mouse on the red target on the image then the feature vector will be created and He/she can add sample the selected samples.
  • 18. CLASSIFICATION (System Training) • The Training System also inform the user if the selected feature vector is target or missed and also for select Geometric class. • The user can also update system Data Set with the new samples of the new Images
  • 19. CLASSIFICATION (Training Samples) • For the KNN classifier we need to store training samples in such away we can retrieve it back and start processing on it using (File structure ,SQL Data Base,….). • Here we using File structure with file name “DataSet.txt” • Feature vector :- [ CX , CY , MRed,MGreen,MBlue, Geometric Class ] EX:- [0.707,0.017,84,115,174,1] [0.711,0.543,138,139,140,2] [0.258,0.961,112,107,95,3] • Here in Geometric Class( 1 : Refer to the Sky , 2: Refer to the Vertical , 3 : Refer to the Ground). 19 19
  • 20. CLASSIFICATION (Our Classifier Output) Input Image Geometric Classes
  • 21. CLASSIFICATION (Problems and Solutions) • Location  A problem that we can not face it in the color features because it is ranged from [0-255] but we face it in the location because the size of images (Width X Height) is not fixed but it’s different from image to another .  Solution :-  Normalize X , Y to the range from [0 - 1] NormalizedX = ( X / W ) , NormalizedY =( Y / H ) • Classifier accuracy  Solution :-  Increase classifier features and searching for other powerful ones.  Try to choose other formula for calculation the distance between feature vector and samples data.
  • 22. CLASSIFICATION (Next Phases) - After dividing the image into three classes(sky, vertical, ground) we will do another classification but only on the vertical, because the vertical class may contain objects like buildings so they may be in the right or in the left or in the center. Vertical Right Left Center
  • 23. VANISHING POINTS What … Vanishing Point? The single point where all the lines on the ground level seem to come together. Vanishing points can also refer to the point in the distance where the two verges of a road appear to converge.
  • 24. VANISHING POINTS Why … 1. This is often used to get the real depth inof the object 2. This is often used to get the real height the image when navigate in the 3D model . parameters ) ( determining the camera
  • 25. VANISHING POINTS How to get it …… 1. Find the edges in the image (  Laplacian ). 2. Take best threshold ( Convert the image to black & white). 3. Apply Hough Transform to detect line Equations. 4. From this Lines detect the vanishing point (most intersection).
  • 26. VANISHING POINTS How to get it …… 110
  • 27. VANISHING POINTS How to get it …… for all pixels in the image if the pixel (x,y) is an edge (white Pixel) for all the theta angles [0~180] Calculate rho for the pixel(x,y) increment that position(rho,theta) in the accumulator Show the hough space Find the highest values in the accumulator
  • 28. VANISHING POINTS How to get it …… All angles [0~180]
  • 29. VANISHING POINTS How to get it …… (next stage) 1- no there specific threshold to take the lines. 2- more than one intersection point.
  • 30. • Creating the 3D Model (Finally) Cutting and Folding We construct a simple 3D model by making “cuts” and “folds” in the image based on the geometric labels (texture mapping).