LYU0503 Document Image Reconstruction on Mobile Using Onboard Camera Supervisor: Professor Michael R.Lyu Group Members: Leung Man Kin, Stephen Ng Ying.

Slides:



Advertisements
Similar presentations
Lecture 2 Concepts, Terms and Definitions. Display Devices They are divided into a lot of small squares called pixels (“PICture ELements”). Each pixel.
Advertisements

QR Code Recognition Based On Image Processing
1 RTL Example: Video Compression – Sum of Absolute Differences Video is a series of frames (e.g., 30 per second) Most frames similar to previous frame.
3D Morphing using Multiplanar Representation
Lecture 1: Overview of Computers & Programming
Render Cache John Tran CS851 - Interactive Ray Tracing February 5, 2003.
Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 5 Ravi Ramamoorthi
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
Modeling Pixel Process with Scale Invariant Local Patterns for Background Subtraction in Complex Scenes (CVPR’10) Shengcai Liao, Guoying Zhao, Vili Kellokumpu,
Multi-Touch Navigation Engine Presented by Team Extra Touch: Chris Jones Shuopeng Yuan Nathan Wiedeback Detailed Design Review 1.
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
Video Object Tracking and Replacement for Post TV Production LYU0303 Final Year Project Spring 2004.
Mobile Motion Tracking using Onboard Camera
Mobile Motion Tracking using Onboard Camera Lam Man Kit CEG Wong Yuk Man CEG.
Text Detection in Video Min Cai Background  Video OCR: Text detection, extraction and recognition  Detection Target: Artificial text  Text.
LYU0101 Wireless Digital Information System Lam Yee Gordon Yeung Kam Wah Supervisor Prof. Michael Lyu Second semester FYP Presentation 2001~2002.
Mobile Motion Tracking using Onboard Camera Supervisor: Prof. LYU, Rung Tsong Michael Prepared by: Lam Man Kit Wong Yuk Man.
Direct Methods for Visual Scene Reconstruction Paper by Richard Szeliski & Sing Bing Kang Presented by Kristin Branson November 7, 2002.
Tracking Migratory Birds Around Large Structures Presented by: Arik Brooks and Nicholas Patrick Advisors: Dr. Huggins, Dr. Schertz, and Dr. Stewart Senior.
 Image Search Engine Results now  Focus on GIS image registration  The Technique and its advantages  Internal working  Sample Results  Applicable.
Enhancing and Optimizing the Render Cache Bruce Walter Cornell Program of Computer Graphics George Drettakis REVES/INRIA Sophia-Antipolis Donald P. Greenberg.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 6: Image Compositing, Morphing Ravi Ramamoorthi
Preprocessing ROI Image Geometry
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
1 LYU0503 Document Image Restoration on Mobile Phone Using Onboard Camera Supervisor: Prof. Michael R.Lyu Group Member: Leung Man Kin, Stephen Ng Ying.
Virtual Dart – An Augmented Reality Game on Mobile Device Supervised by Prof. Michael R. Lyu LYU0604Lai Chung Sum ( )Siu Ho Tung ( )
1 Location-Based Services Using GSM Cell Information over Symbian OS Final Year Project LYU0301 Mok Ming Fai (mfmok1) Lee Kwok Chau (leekc1)
A Novel 2D To 3D Image Technique Based On Object- Oriented Conversion.
1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System Supervisor: Prof Michael Lyu Presented by: Lewis Ng,
Company LOGO Mobile Motion Tracking using Onboard Camera Supervisor Prof. LYU, Rung Tsong Michael Presented by Lam Man Kit, Wong Yuk Man.
REAL-TIME DETECTION AND TRACKING FOR AUGMENTED REALITY ON MOBILE PHONES Daniel Wagner, Member, IEEE, Gerhard Reitmayr, Member, IEEE, Alessandro Mulloni,
Face Recognition Using Neural Networks Presented By: Hadis Mohseni Leila Taghavi Atefeh Mirsafian.
Programming mobile devices Part II Programming Symbian devices with Symbian C++
TERMS TO KNOW. Programming Language A vocabulary and set of grammatical rules for instructing a computer to perform specific tasks. Each language has.
MACHINE VISION GROUP Graphics hardware accelerated panorama builder for mobile phones Miguel Bordallo López*, Jari Hannuksela*, Olli Silvén* and Markku.
Image Resampling ASTR 3010 Lecture 21 Textbook 9.4.
By Yevgeny Yusepovsky & Diana Tsamalashvili the supervisor: Arie Nakhmani 08/07/2010 1Control and Robotics Labaratory.
Digital Video and Multimedia If images can portray a powerful message then video (as a series of related images) is a serious consideration for any multimedia.
Chapter 3: Image Restoration Geometric Transforms.
: Chapter 12: Image Compression 1 Montri Karnjanadecha ac.th/~montri Image Processing.
STC Robot 2 Majd Srour, Anis Abboud Under the supervision of: Yotam Elor and Prof. Alfred Bruckstein Optimally Covering an Unknown Environment with Ant-like.
Automatic Registration of Color Images to 3D Geometry Computer Graphics International 2009 Yunzhen Li and Kok-Lim Low School of Computing National University.
1 Perception, Illusion and VR HNRS 299, Spring 2008 Lecture 14 Introduction to Computer Graphics.
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal Video Conference Archives Indexing System.
Simple Image Processing Speaker : Lin Hsiu-Ting Date : 2005 / 04 / 27.
Reconstructing 3D mesh from video image sequences supervisor : Mgr. Martin Samuelčik by Martin Bujňák specifications Master thesis
High-Resolution Interactive Panoramas with MPEG-4 발표자 : 김영백 임베디드시스템연구실.
Department of Computer Science and Engineering, CUHK 1 Final Year Project 2003/2004 LYU0302 PVCAIS – Personal VideoConference Archives Indexing System.
Real-Time Cyber Physical Systems Application on MobilityFirst Winlab Summer Internship 2015 Karthikeyan Ganesan, Wuyang Zhang, Zihong Zheng.
Spring 2012Meeting 2, 7:20PM-10PM1 Image Processing with Applications-CSCI567/MATH563 Lectures 3, 4, and 5: L3. Representing Digital Images; Zooming. Bilinear.
CS378 - Mobile Computing Responsiveness. An App Idea From Nifty Assignments Draw a picture use randomness Pick an equation at random Operators in the.
Mosaic Creator Lance Finfrock CS 470. Introduction A Mosaic is hundreds or thousands of pictures comprised to make one picture.
Creating Better Thumbnails Chris Waclawik. Project Motivation Thumbnails used to quickly select a specific a specific image from a set (when lacking appropriate.
Advanced Computer Graphics Spring 2014 K. H. Ko School of Mechatronics Gwangju Institute of Science and Technology.
Real-Time Cyber Physical Systems Application on MobilityFirst Winlab Summer Internship 2015 Karthikeyan Ganesan, Wuyang Zhang, Zihong Zheng Shantanu Ghosh,
Review on Graphics Basics. Outline Polygon rendering pipeline Affine transformations Projective transformations Lighting and shading From vertices to.
A SEMINAR ON 1 CONTENT 2  The Stream Programming Model  The Stream Programming Model-II  Advantage of Stream Processor  Imagine’s.
Content-Based Image Retrieval (CBIR) By: Victor Makarenkov Michael Marcovich Noam Shemesh.
Augmented Reality and 3D modelling Done by Stafford Joemat Supervised by Mr James Connan.
CSCI 631 – Foundations of Computer Vision March 15, 2016 Ashwini Imran Image Stitching.
CONTENTS:  Introduction.  Face recognition task.  Image preprocessing.  Template Extraction and Normalization.  Template Correlation with image database.
Depth Analysis With Stereo Cameras
CS 4501: Introduction to Computer Vision Sparse Feature Detectors: Harris Corner, Difference of Gaussian Connelly Barnes Slides from Jason Lawrence, Fei.
Image Stitching Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi.
IMAGE MOSAICING MALNAD COLLEGE OF ENGINEERING
Idea: projecting images onto a common plane
Scalable light field coding using weighted binary images
Image Stitching Linda Shapiro ECE/CSE 576.
Image Stitching Linda Shapiro ECE P 596.
Presentation transcript:

LYU0503 Document Image Reconstruction on Mobile Using Onboard Camera Supervisor: Professor Michael R.Lyu Group Members: Leung Man Kin, Stephen Ng Ying Kit, Tommy

2 Outline Motivation Objective Symbian Operating System Previous Work Implementation Experimental results Difficulties Conclusion

3 Motivation Most people posses mobile phones Quality of onboard camera improves Processing power increases Mobile phones have many functions –Take photos, Music Jukebox –How to add more values?

4 Objective Reconstruct documents on mobile phones Input: Different parts of document Output: A high resolution document

5 Symbian Operation System A mobile OS from Symbian Ltd. Design for 2G, 2.5G and 3G mobile phones 32-bit preemptive multi-tasking OS Features: –Multi-tasking kernel –Mobile telephony support –Communication –Data management –Etc.

6 Symbian Operating System Symbian phone models –Nokia 6600 –Nokia 6630 –Nokia N90 Symbian SDK provided to develop program It enables programmers to gain more control on phone compared with java environment

7 Symbian Operating System Some testing results using Nokia N90 –It can allow use allocate at most 1M memory manually (e.g. malloc in C). –It can allow us to open Mega pixel gray scale image (using class CFbsBitmap). Why different? –The architecture of Symbian OS is client-server. –malloc in C is for client side. –The class is in the server side.

8 Previous Work Study basic idea of different image alignment and stitching techniques. Implemented & tested on PC –Use SIFT to find matching points –Stitch the image using the matching points Tested some related APIs on Symbian OS –Processing image –Fax API –Etc.

9 Implementation The implementation is divided into 5 parts –Take photos of the document –Lens correction of the photos –Mark matching points of the photos –Stitch the photos –Optimize the photo

10 Take photos of the document 1.Take the whole document –Align the distance between the camera and document to take photo of the whole document.

11 Take photos of the document 2.Take the individual part of the document –The camera is taken closer to the document to take the required image

12 Graphical User Interface To instruct the user to take photo of the individual part of the document –Overlaying is used.

13 Graphical User Interface Overlaying –Output.R = (Picture1.R + Picture2.R) / 2 –Output.G = (Picture1.G + Picture2.G) / 2 –Output.B = (Picture1.B + Picture2.B) / 2 –R = Red –G = Green –B = Blue The process is simple and quick –Complexity is O(Width * Height) –Involved one addition and one shift for each color component for each pixel. –Can be used in Symbian phone real-time

14 Take photos of the document After taking photo of the whole document, divide the whole document into several part like Use Overlay to display both the individual part and the current frame from the camera

15 Take photos of the document Before the overlaying, the size of both image should be the same –Cannot instruct the user to take photo correctly. –Resizing is used. –It would take time if interpolation is needed. Careful use of image size –The image resolution 1600 x 1200 (whole document) –The resolution from the camera 800 x 600 If bigger (the same as the image), the camera would be lagging –The wanted resolution is about 400 x 300. –To reduce 1600 x 1200 to 400 x 300 and 800 x 600 to 400 x 300 Just sub-sample the whole document. No interpolation is needed

16 Take photos of the document User is instructed to take photos correctly.

17 Take photos of the document Pseudo code Take phone of whole document Divide the whole document into four For each sub document While (there is next frame from camera) Sub-sampled sub-document Sub-sampled of the current frame Overlay the above two image and display if (User take photo of sub-document) Store the photo break

18 Lens correction Photos suffer from lens distortion –Barrel type –Pincushion type

19 Lens correction Image transformation –Transform the images using the equations

20 Lens correction

21 Mark matching points manually In order to reconstruct the photos well –Need to find match points between photo –Transform the individual photos according to the whole document The finding and matching feature points using SIFT need much time

22 Mark matching points manually On PC (3.0Ghz), it need about: –finding feature points: 4~5min each image –matching feature points: 4~5 min each pair of image –TOTAL = 45 min The processing power of Symbian phone is much less than the PC. –Nokia N90: RISC 220Mhz processer Mark the points manually would be faster and more reasonable.

23 Mark matching points manually Ask the user to mark the matching points

24 Mark matching points manually Like overlaying, resize is needed. –Only sub-sampling is needed. We use (x, y) coordinates to store for each points. In previous example, we would obtain 16 pairs of (x, y) coordinates. –Each individual image contributes 4 pairs –There are 4 individual images. The coordinates are stored and used to transform the individual photos in the later stage.

25 Mark matching points manually Pseudo code For each sub-document Display left half of the sub-document and corresponding part of whole document Marking two pairs of points Display right half of the sub-document and corresponding part of whole document Marking two pairs of points Store the coordinates into the file.

26 Mark matching points manually Marked Marker

27 Stitch the photos 1. Find transform Parameter Set 1 2. Transform corresponding coordinates using set 1

28 Stitch the photos 3. Find transform parameter set 2 by sub-image2 and transformed coordinates 4. Using set 2 to transform whole sub-image2

29 Stitch the photos 5. Similarly for all other sub-images 6. Stick them together and high resolution image formed!

30 Image Blending Bilinear Interpolation –A weighted mean of nearby pixel values

31 Image Blending Averaging Mask –Mean of pixel values of 8 neighbors

32 Image Blending Threshold –Quantize the pixel values by a threshold value

33 Experimental Results

34 Experimental Results

35 Experimental Results

36 Experimental Results

37 Experimental Results

38 Difficulties Limitation of processing speed –Image processing involves much computation –Processing in phone would take much time than PC. Limitation of memory –PC have much more memory and is allowed to use virtual memory. –Image processing, like image stitching, involves much memory

39 Conclusion We have studied different stitching algorithms We have implemented the stitching algorithm on both PC & Symbian phone Defects are still exist in the resulting image

40 ~ THE END ~