CT336/CT404 Graphics & Image Processing. Section 7 Fundamental Image Processing Techniques
|
|
- Clara Barrett
- 6 years ago
- Views:
Transcription
1 CT336/CT404 Graphics & Image Processing Section 7 Fundamental Image Processing Techniques
2 Graphics Vs. Image Processing COMPUTER GRAPHICS: processing and display of images of objects that exist conceptually rather than physically emphasis on the generation of an image from a model of the objects, illumination, etc. emphasis (often) on rendering efficiency for real-time display DIGITAL IMAGE PROCESSING: processing and analysis of images of the real world emphasis on the modification of the image emphasis on extraction of domain-specific information from the image
3
4
5 Image Processing Techniques include.. Image enhancement provide more effective display of data for visual interpretation (e.g. human eye can distinguish c.40 grey shades) increase the visual distinction between features in a scene. "digital darkroom" techniques
6 Image Processing Techniques include.. Image rectification and restoration correction of geometric distortions, calibration of data, elimination of noise correction of blurring
7 Image Processing Techniques include.. Image classification / automatic scene interpretation / machine vision Replace or assist visual (manual) data analysis by automating the identification of features in a scene. Decision rules may be based on: Spectral radiance (e.g. colour or tone) Spatial information (e.g. geometrical shapes, sizes and patterns/textures).
8 Some Application Areas Remote Sensing Spectral classification - e.g. landcover maps Textural classification - e.g. cloud classification maps Knowledge based approaches - e.g. urban maps Robot guidance Automatic target recognition/tracking
9 Some Application Areas Industrial Inspection Measurement Quality control Medical/zoological X-Ray enhancement Counting objects of interest Morphological measurement/ classification
10 Image Processing technology platforms For high-performance image processing, and to use pre-built library functions, one good choice is Open CV Open Source Computer Vision Library (OpenCV) is an open source computer vision and machine learning software library, which is available for C and Java For the purposes of exploring the fundamentals of image processing, we are going to use Canvas and Javascript, in order to avoid learning extra technologies and using other languages
11 Loading and Displaying images <html> <head> <script> function loadimage() { var textbox = document.getelementbyid("filename"); var filename = textbox.value; var img = new Image(); img.src = filename; img.onload = function() { var wid = img.naturalwidth; var hgt = img.naturalheight; var canvas = document.getelementbyid("canvas"); // this only works if we use width as an attribute rather than a style canvas.width = wid; canvas.height = hgt; var ctx = canvas.getcontext("2d"); ctx.drawimage(img,0,0,wid,hgt); </script> </head> 01-DisplayImage.html <body> <canvas id="canvas" style="border-width:1px; border-style:solid;" width="500" height="500"></canvas><br> <input type="text" id="filename" style="width:600px;" value="images/cookiemonster.jpg"> <input type="button" onclick="loadimage();" value="load Image"> </body> </html>
12 Manipulating Pixels Using Javascript, we can read and write the pixels in a Canvas object Pixels are received as an array of integers, into which the cells of the image are stored in rows starting top-left Each cell takes up 4 integers of space (i.e. R,G,B,A components are separate) This is discussed well here: e.g. for an image of 3x2 pixels, the array size will be 3x2x4 = 24
13 Manipulating Pixels To read the data from an Canvas drawing context: var imagedata = ctx.getimagedata(0, 0, width, height); imagedata is an object with the following properties: imagedata.width // width in pixels imagedata.height // height in pixels imagedata.data // pixel data array of (width*height*4) elements To write modified pixel data back into the Canvas drawing context, positioned at 0,0: ctx.putimagedata(imagedata,0,0);
14 <html> <head> <script> Example.. Remove the blue from Cookie Monster (1/2) function loadimage() { var filename = "images/cookiemonster.jpg"; var img = new Image(); img.src = filename; img.onload = function() { var wid = img.naturalwidth; var hgt = img.naturalheight; var canvas = document.getelementbyid("canvas"); // this only works if we use width as an attribute rather than a style canvas.width = wid; canvas.height = hgt; var ctx = canvas.getcontext("2d"); ctx.drawimage(img,0,0,wid,hgt); // read pixels var imagedata = ctx.getimagedata(0, 0, wid, hgt);
15 (2/2) // iterate thru pixels, setting the Blue of each to zero for (x=0; x<wid; x++) { for (y=0; y<hgt; y++) { var index = (x + y*imagedata.width) * 4; /* // if we wanted to inspect the pixel data: var red = imagedata.data[index+0]; var green = imagedata.data[index+1]; var blue = imagedata.data[index+2]; var alpha = imagedata.data[index+3]; */ // actually all we want to do is modify the pixel data: imagedata.data[index+2] = 0; // set Blue component of current pixel to zero </script> </head> // copy the image data back onto the canvas ctx.putimagedata(imagedata, 0, 0); // at coords 0,0 <body onload="loadimage();"> <canvas id="canvas" style="border-width:1px; border-style:solid;" width="500" height="500"></canvas><br> </body> </html>
16 Fundamental Image Processing Techniques Global or point operations modify the value of each pixel independently E.g. histogram manipulation Local operations modify each pixel according to some function involving itself and its neighbours E.g. edge detection
17 Histogram Manipulation Grey-scale histogram: a histogram of the frequencies of each of the grey levels Manipulation of histogram: a point operation Distribution of grey levels: concentrated near a certain level => low contrast/ poor visual interpretability. wide range of levels is represented => high contrast.
18 Histogram Manipulation Contrast stretching spaces out values so that they are more easily distinguishable. Uniform expansion/ linear stretch assigns as many grey levels to rarely occurring values as to frequently occurring ones. Histogram-equalised stretch: image values are assigned to new values on the basis of their frequency of occurrence: more display values (and hence more detail) are assigned to the frequently occurring portions of the histogram. The aim is to maximise the overall contrast: a nearly uniform (i.e. flat) distribution is produced. Special analyses can be made by stretching a particular range of image values over the entire range, while disregarding the other image values. (show IPTK with 9532.bmp)
19 Thresholding A simple segmentation technique that is very useful for separating solid objects from a contrasting background. All pixels above a determined (threshold) grey level are assumed to belong to the object, and all pixels below that level are assumed to be outside the object (or vice versa) The selection of the threshold level is very important, since it will affect any measurements of parameters concerning the object (the exact object boundary is very sensitive to the grey threshold level chosen). Thresholding is a point technique however locally adaptive thresholding" determines different local thresholds for sections of an image
20 Example: thresholding an image in Canvas/Javascript <html> <head> <script src="imageprocessingfunctions.js"></script> <script> // these globals are set in readimage() var imgwidth, imgheight; var ctx; function loadimage() { var textbox = document.getelementbyid("filename"); var filename = textbox.value; var canvas = document.getelementbyid("canvas"); readimage(canvas,filename); function dothreshold() { var level = document.getelementbyid("threshlevel").value; var imagedata = ctx.getimagedata(0, 0, imgwidth, imgheight); greyscale(imagedata); threshold(imagedata, level); ctx.putimagedata(imagedata, 0, 0); </script> </head> <body> <canvas id="canvas" style="border-width:1px; borderstyle:solid;" width="500" height="500"></canvas><br> <input type="text" id="filename" style="width:600px;" value="images/cookiemonster.jpg"> <input type="button" onclick="loadimage();" value="load Image"><br> <input type="text" id="threshlevel" style="width:100px;" value="127"> <input type="button" onclick="dothreshold();" value="threshold"> </body> </html>
21 imageprocessingfunctions.js (1/2) // useful image processing functions for Canvas imagedata function readimage(canvas,filename) { var img = new Image(); img.src = filename; img.onload = function() { var wid = img.naturalwidth; var hgt = img.naturalheight; canvas.width = wid; canvas.height = hgt; ctx = canvas.getcontext("2d"); // global var ctx.drawimage(img,0,0,wid,hgt); imgwidth = wid; // global var imgheight = hgt; // global var
22 function greyscale(imagedata) { var wid = imagedata.width; var hgt = imagedata.height; for (x=0;x<wid;x++) { for (y=0;y<hgt;y++) { var index = (x + y * imagedata.width) * 4; vargrey = Math.round((imageData.data[index+0] + imagedata.data[index+1] + imagedata.data[index+2])/3); imagedata.data[index+0] = imagedata.data[index+1] = imagedata.data[index+2] = grey; function threshold(imagedata, level) { // assumes image is greyscale (i.e. RGB all the same) // so we will only read the Red channel var wid = imagedata.width; var hgt = imagedata.height; for (x=0;x<wid;x++) { for (y=0;y<hgt;y++) { var index = (x + y * imagedata.width) * 4; var grey = imagedata.data[index+0]; var output; if (grey>=level) output=255; else output=0; imagedata.data[index+0] = imagedata.data[index+1] = imagedata.data[index+2] = output; (2/2)
23 Convolution (Filtering) A fundamental (and very flexible) local operation Used for a variety of tasks, including noise removal, blurring, sharpening, and edge detection. Establish a moving window ('kernel') which contains an array of coefficients or weighting factors. Move the kernel across the original image, so that it centres on each pixel in turn. Each coefficient in the kernel is multiplied by the value of the pixel below it, and the addition of each of these values determines the value of the pixel in the output image corresponding to the pixel in the centre of the kernel.
24 Convolution (Filtering) The effect of applying a kernel to an image depends directly upon the size of the kernel used and the values of its coefficients e.g. this kernel would be responsive to vertical lines/edges: e.g. this one would perform a blur: /9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 1/9 See:
25 Exercise..? Write a Javascript function for performing an arbitrary 3x3 convolution based on an array of 9 values passed to it Use this function to perform the two filters from the previous slide, using a Canvas object
26 Enhanced vertical edges
27 <html> <head> <script src="imageprocessingfunctions.js"></script> <style> input { width:25px; </style> <script> // these globals are set in readimage() var imgwidth, imgheight; var ctx; function loadimage() { var textbox = document.getelementbyid("filename"); var filename = textbox.value; var canvas = document.getelementbyid("canvas"); readimage(canvas,filename); function doconvolution() { var kernel = new Array(); for (cell=0;cell<9;cell++) kernel[cell]=parseint(document.getelementbyid("cell"+cell).value); var imagedata = ctx.getimagedata(0, 0, imgwidth, imgheight); greyscale(imagedata); convolution3x3(imagedata,kernel); ctx.putimagedata(imagedata, 0, 0); </script> </head> <body> <canvas id="canvas" style="border-width:1px; border-style:solid;" width="500" height="500"></canvas><br> <input type="text" id="filename" style="width:600px;" value="images/cookiemonster.jpg"> <input type="button" style="width:100px;" onclick="loadimage();" value="load Image"><br> <input id='cell0' value='0'><input id='cell1' value='0'><input id='cell2' value='0'><br> <input id='cell3' value='0'><input id='cell4' value='0'><input id='cell5' value='0'><br> <input id='cell6' value='0'><input id='cell7' value='0'><input id='cell8' value='0'><br> <input type="button" style="width:180px;" value="apply Convolution Kernel" onclick="doconvolution();"> </body> </html>
28 function convolution3x3(imagedata,kernel) { // create a temporary array for output var outputdata = new Array(); var sz = imagedata.data.length; for (i=0;i<sz;i++) outputdata[i] = imagedata.data[i]; var wid = imagedata.width; var hgt = imagedata.height; for (x=1;x<wid-1;x++) { for (y=1;y<hgt-1;y++) { var weightedsum = 0; for (xx=-1;xx<=1;xx++) { for (yy=-1;yy<=1;yy++) { var index = (x+xx + (y+yy)*wid) * 4; var grey = imagedata.data[index+0]; var kernelcellindex = (xx+1 + (yy+1)*3); weightedsum += grey*kernel[kernelcellindex]; var index = (x + y * wid) * 4; var outputgrey = weightedsum; outputdata[index] = outputgrey; // red channel outputdata[index+1] = outputgrey; // green channel outputdata[index+2] = outputgrey; // blue channel Additional function in imageprocessingfunctions.js imagedata[x+xx][y+yy][0] // copy data from output array to original array for (i=0;i<sz;i++) imagedata.data[i] = outputdata[i];
Image Processing. HTML5 Canvas JavaScript Pixels
Image Processing HTML5 Canvas JavaScript Pixels Brent M. Dingle, Ph.D. 2015 Game Design and Development Program Mathematics, Statistics and Computer Science University of Wisconsin - Stout Provide Examples
More informationClassification of image operations. Image enhancement (GW-Ch. 3) Point operations. Neighbourhood operation
Image enhancement (GW-Ch. 3) Classification of image operations Process of improving image quality so that the result is more suitable for a specific application. contrast stretching histogram processing
More informationBabu Madhav Institute of Information Technology Years Integrated M.Sc.(IT)(Semester - 7)
5 Years Integrated M.Sc.(IT)(Semester - 7) 060010707 Digital Image Processing UNIT 1 Introduction to Image Processing Q: 1 Answer in short. 1. What is digital image? 1. Define pixel or picture element?
More informationIMAGE & TEXT. Workshop 5
IMAGE & TEXT Workshop 5 RESOURCE Image (.png,.jpg,.svg, etc.) Font (.ttf,.otf, etc.) Audio (.mp3,.wav,.aiff, etc.) Video (.mov,.avi, etc.) Data (.js,.json,.xml, etc.) Why is loading an image, different
More informationLecture 6: Edge Detection
#1 Lecture 6: Edge Detection Saad J Bedros sbedros@umn.edu Review From Last Lecture Options for Image Representation Introduced the concept of different representation or transformation Fourier Transform
More informationChapter - 2 : IMAGE ENHANCEMENT
Chapter - : IMAGE ENHANCEMENT The principal objective of enhancement technique is to process a given image so that the result is more suitable than the original image for a specific application Image Enhancement
More informationBroad field that includes low-level operations as well as complex high-level algorithms
Image processing About Broad field that includes low-level operations as well as complex high-level algorithms Low-level image processing Computer vision Computational photography Several procedures and
More informationDIGITAL IMAGE ANALYSIS. Image Classification: Object-based Classification
DIGITAL IMAGE ANALYSIS Image Classification: Object-based Classification Image classification Quantitative analysis used to automate the identification of features Spectral pattern recognition Unsupervised
More informationTheoretically Perfect Sensor
Sampling 1/60 Sampling The ray tracer samples the geometry, only gathering information from the parts of the world that interact with a finite number of rays In contrast, a scanline renderer can push all
More informationLast update: May 4, Vision. CMSC 421: Chapter 24. CMSC 421: Chapter 24 1
Last update: May 4, 200 Vision CMSC 42: Chapter 24 CMSC 42: Chapter 24 Outline Perception generally Image formation Early vision 2D D Object recognition CMSC 42: Chapter 24 2 Perception generally Stimulus
More informationImage Processing Fundamentals. Nicolas Vazquez Principal Software Engineer National Instruments
Image Processing Fundamentals Nicolas Vazquez Principal Software Engineer National Instruments Agenda Objectives and Motivations Enhancing Images Checking for Presence Locating Parts Measuring Features
More informationPreviously... contour or image rendering in 2D
Volume Rendering Visualisation Lecture 10 Taku Komura Institute for Perception, Action & Behaviour School of Informatics Volume Rendering 1 Previously... contour or image rendering in 2D 2D Contour line
More informationDigital Image Processing COSC 6380/4393
Digital Image Processing COSC 6380/4393 Lecture 21 Nov 16 th, 2017 Pranav Mantini Ack: Shah. M Image Processing Geometric Transformation Point Operations Filtering (spatial, Frequency) Input Restoration/
More informationLecture 4: Spatial Domain Transformations
# Lecture 4: Spatial Domain Transformations Saad J Bedros sbedros@umn.edu Reminder 2 nd Quiz on the manipulator Part is this Fri, April 7 205, :5 AM to :0 PM Open Book, Open Notes, Focus on the material
More informationCOMPUTER VISION. Dr. Sukhendu Das Deptt. of Computer Science and Engg., IIT Madras, Chennai
COMPUTER VISION Dr. Sukhendu Das Deptt. of Computer Science and Engg., IIT Madras, Chennai 600036. Email: sdas@iitm.ac.in URL: //www.cs.iitm.ernet.in/~sdas 1 INTRODUCTION 2 Human Vision System (HVS) Vs.
More informationBiometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)
Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong) References: [1] http://homepages.inf.ed.ac.uk/rbf/hipr2/index.htm [2] http://www.cs.wisc.edu/~dyer/cs540/notes/vision.html
More informationPart 3: Image Processing
Part 3: Image Processing Image Filtering and Segmentation Georgy Gimel farb COMPSCI 373 Computer Graphics and Image Processing 1 / 60 1 Image filtering 2 Median filtering 3 Mean filtering 4 Image segmentation
More informationBasic Algorithms for Digital Image Analysis: a course
Institute of Informatics Eötvös Loránd University Budapest, Hungary Basic Algorithms for Digital Image Analysis: a course Dmitrij Csetverikov with help of Attila Lerch, Judit Verestóy, Zoltán Megyesi,
More informationProgramming Fundamentals
Programming Fundamentals Lecture 03 Introduction to Löve 2D Edirlei Soares de Lima Computer Graphics Concepts What is a pixel? In digital imaging, a pixel is a single
More informationA l g o r i t h m s a n d J a v a S c r i p t P r o g r a m. o f R - F u n c t i o n s a n d P r o d u c i n g T h e i r T w o - a n d
Proceedings of the 5th International Conference on Nonlinear Dynamics ND-KhPI2016 September 27-30, 2016, Kharkov, Ukraine A l g o r i t h m s a n d J a v a S c r i p t P r o g r a m s i n C a l c u l a
More informationTheoretically Perfect Sensor
Sampling 1/67 Sampling The ray tracer samples the geometry, only gathering information from the parts of the world that interact with a finite number of rays In contrast, a scanline renderer can push all
More informationAn Intuitive Explanation of Fourier Theory
An Intuitive Explanation of Fourier Theory Steven Lehar slehar@cns.bu.edu Fourier theory is pretty complicated mathematically. But there are some beautifully simple holistic concepts behind Fourier theory
More informationThis is an open-book, open-notes, open-computer exam. You may not consult with anyone other than the instructor while working on this exam.
FINAL EXAM KEY SPRING 2016 CSC 105 INTERACTIVE WEB DOCUMENTS NICHOLAS R. HOWE This is an open-book, open-notes, open-computer exam. You may not consult with anyone other than the instructor while working
More informationVolume visualization. Volume visualization. Volume visualization methods. Sources of volume visualization. Sources of volume visualization
Volume visualization Volume visualization Volumes are special cases of scalar data: regular 3D grids of scalars, typically interpreted as density values. Each data value is assumed to describe a cubic
More informationCT336/CT404 Graphics & Image Processing. Animation and Interactivity (X3D, Canvas)
CT336/CT404 Graphics & Image Processing Animation and Interactivity (X3D, Canvas) The X3D Event Model X3D provides an event model which allows certain events occurring to cause changes to objects. The
More informationFundamentals of Digital Image Processing
\L\.6 Gw.i Fundamentals of Digital Image Processing A Practical Approach with Examples in Matlab Chris Solomon School of Physical Sciences, University of Kent, Canterbury, UK Toby Breckon School of Engineering,
More informationImage processing and features
Image processing and features Gabriele Bleser gabriele.bleser@dfki.de Thanks to Harald Wuest, Folker Wientapper and Marc Pollefeys Introduction Previous lectures: geometry Pose estimation Epipolar geometry
More informationINFS 2150 Introduction to Web Development
INFS 2150 Introduction to Web Development 4. Graphics and Images Objectives Create a figure box Add a background image Add a border to an element Create rounded borders Create a graphic border Create a
More informationExamination in Image Processing
Umeå University, TFE Ulrik Söderström 203-03-27 Examination in Image Processing Time for examination: 4.00 20.00 Please try to extend the answers as much as possible. Do not answer in a single sentence.
More informationINFS 2150 Introduction to Web Development
Objectives INFS 2150 Introduction to Web Development 4. Graphics and Images Create a figure box Add a background image Add a border to an element Create rounded borders Create a graphic border Create a
More informationC P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE. Mikhail Bessmeltsev
C P S C 314 S H A D E R S, O P E N G L, & J S RENDERING PIPELINE UGRAD.CS.UBC.C A/~CS314 Mikhail Bessmeltsev 1 WHAT IS RENDERING? Generating image from a 3D scene 2 WHAT IS RENDERING? Generating image
More informationObject-Based Classification & ecognition. Zutao Ouyang 11/17/2015
Object-Based Classification & ecognition Zutao Ouyang 11/17/2015 What is Object-Based Classification The object based image analysis approach delineates segments of homogeneous image areas (i.e., objects)
More informationComputer Graphics Fundamentals. Jon Macey
Computer Graphics Fundamentals Jon Macey jmacey@bournemouth.ac.uk http://nccastaff.bournemouth.ac.uk/jmacey/ 1 1 What is CG Fundamentals Looking at how Images (and Animations) are actually produced in
More informationThe feature set you are required to implement in your ray tracer is as follows (by order from easy to hard):
Ray Tracing exercise TAU, Computer Graphics, 0368.3014, semester B Go to the Updates and FAQ Page Overview The objective of this exercise is to implement a ray casting/tracing engine. Ray tracing is a
More informationAppendix A Canvas Reference
Appendix A Canvas Reference BC2 HTML5 GAMES CREATING FUN WITH HTML5, CSS3, AND WEBGL The Canvas Element See the official W3C specification for full details on the canvas element (www.w3.org/tr/ html5/the-canvas-element.html.
More informationTypes of image feature and segmentation
COMP3204/COMP6223: Computer Vision Types of image feature and segmentation Jonathon Hare jsh2@ecs.soton.ac.uk Image Feature Morphology Recap: Feature Extractors image goes in Feature Extractor featurevector(s)
More informationWeb Programming 1 Packet #5: Canvas and JavaScript
Web Programming 1 Packet #5: Canvas and JavaScript Name: Objectives: By the completion of this packet, students should be able to: use JavaScript to draw on the canvas element Canvas Element. This is a
More informationImage Processing
Image Processing 159.731 Canny Edge Detection Report Syed Irfanullah, Azeezullah 00297844 Danh Anh Huynh 02136047 1 Canny Edge Detection INTRODUCTION Edges Edges characterize boundaries and are therefore
More informationOriginal grey level r Fig.1
Point Processing: In point processing, we work with single pixels i.e. T is 1 x 1 operator. It means that the new value f(x, y) depends on the operator T and the present f(x, y). Some of the common examples
More informationData Representation From 0s and 1s to images CPSC 101
Data Representation From 0s and 1s to images CPSC 101 Learning Goals After the Data Representation: Images unit, you will be able to: Recognize and translate between binary and decimal numbers Define bit,
More informationLecture 14: Computer Vision
CS/b: Artificial Intelligence II Prof. Olga Veksler Lecture : Computer Vision D shape from Images Stereo Reconstruction Many Slides are from Steve Seitz (UW), S. Narasimhan Outline Cues for D shape perception
More informationEdge Detection. Whitepaper
Public Imagination Technologies Edge Detection Copyright Imagination Technologies Limited. All Rights Reserved. This publication contains proprietary information which is subject to change without notice
More informationComputer and Machine Vision
Computer and Machine Vision Lecture Week 4 Part-2 February 5, 2014 Sam Siewert Outline of Week 4 Practical Methods for Dealing with Camera Streams, Frame by Frame and De-coding/Re-encoding for Analysis
More informationEXAM SOLUTIONS. Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006,
School of Computer Science and Communication, KTH Danica Kragic EXAM SOLUTIONS Image Processing and Computer Vision Course 2D1421 Monday, 13 th of March 2006, 14.00 19.00 Grade table 0-25 U 26-35 3 36-45
More informationMassachusetts Institute of Technology. Department of Computer Science and Electrical Engineering /6.866 Machine Vision Quiz I
Massachusetts Institute of Technology Department of Computer Science and Electrical Engineering 6.801/6.866 Machine Vision Quiz I Handed out: 2004 Oct. 21st Due on: 2003 Oct. 28th Problem 1: Uniform reflecting
More informationEE663 Image Processing Histogram Equalization I
EE663 Image Processing Histogram Equalization I Dr. Samir H. Abdul-Jauwad Electrical Engineering Department College of Engineering Sciences King Fahd University of Petroleum & Minerals Dhahran Saudi Arabia
More informationAdvanced Video Content Analysis and Video Compression (5LSH0), Module 4
Advanced Video Content Analysis and Video Compression (5LSH0), Module 4 Visual feature extraction Part I: Color and texture analysis Sveta Zinger Video Coding and Architectures Research group, TU/e ( s.zinger@tue.nl
More informationData Visualization (DSC 530/CIS )
Data Visualization (DSC 530/CIS 602-02) Web Programming Dr. David Koop 2 What languages do we use on the Web? 3 Languages of the Web HTML CSS SVG JavaScript - Versions of Javascript: ES6, ES2015, ES2017
More informationPART 1. Answers module 6: 'Transformations'
Answers module 6: 'Transformations' PART 1 1 a A nominal measure scale refers to data that are in named categories. There is no order among these categories. That is, no category is better or more than
More informationComputer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town
Recap: Smoothing with a Gaussian Computer Vision Computer Science Tripos Part II Dr Christopher Town Recall: parameter σ is the scale / width / spread of the Gaussian kernel, and controls the amount of
More information11. Image Data Analytics. Jacobs University Visualization and Computer Graphics Lab
11. Image Data Analytics Motivation Images (and even videos) have become a popular data format for storing information digitally. Data Analytics 377 Motivation Traditionally, scientific and medical imaging
More informationThe. Handbook ijthbdition. John C. Russ. North Carolina State University Materials Science and Engineering Department Raleigh, North Carolina
The IMAGE PROCESSING Handbook ijthbdition John C. Russ North Carolina State University Materials Science and Engineering Department Raleigh, North Carolina (cp ) Taylor &. Francis \V J Taylor SiFrancis
More informationUNIT - 5 IMAGE ENHANCEMENT IN SPATIAL DOMAIN
UNIT - 5 IMAGE ENHANCEMENT IN SPATIAL DOMAIN Spatial domain methods Spatial domain refers to the image plane itself, and approaches in this category are based on direct manipulation of pixels in an image.
More informationA Visual Programming Environment for Machine Vision Engineers. Paul F Whelan
A Visual Programming Environment for Machine Vision Engineers Paul F Whelan Vision Systems Group School of Electronic Engineering, Dublin City University, Dublin 9, Ireland. Ph: +353 1 700 5489 Fax: +353
More informationSuRVoS Workbench. Super-Region Volume Segmentation. Imanol Luengo
SuRVoS Workbench Super-Region Volume Segmentation Imanol Luengo Index - The project - What is SuRVoS - SuRVoS Overview - What can it do - Overview of the internals - Current state & Limitations - Future
More informationAlbert M. Vossepoel. Center for Image Processing
Albert M. Vossepoel www.ph.tn.tudelft.nl/~albert scene image formation sensor pre-processing image enhancement image restoration texture filtering segmentation user analysis classification CBP course:
More informationAliasing. Can t draw smooth lines on discrete raster device get staircased lines ( jaggies ):
(Anti)Aliasing and Image Manipulation for (y = 0; y < Size; y++) { for (x = 0; x < Size; x++) { Image[x][y] = 7 + 8 * sin((sqr(x Size) + SQR(y Size)) / 3.0); } } // Size = Size / ; Aliasing Can t draw
More informationTexture. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors
Texture The most fundamental question is: How can we measure texture, i.e., how can we quantitatively distinguish between different textures? Of course it is not enough to look at the intensity of individual
More informationRaycasting. Chapter Raycasting foundations. When you look at an object, like the ball in the picture to the left, what do
Chapter 4 Raycasting 4. Raycasting foundations When you look at an, like the ball in the picture to the left, what do lamp you see? You do not actually see the ball itself. Instead, what you see is the
More informationProf. Fanny Ficuciello Robotics for Bioengineering Visual Servoing
Visual servoing vision allows a robotic system to obtain geometrical and qualitative information on the surrounding environment high level control motion planning (look-and-move visual grasping) low level
More informationImage Processing, Analysis and Machine Vision
Image Processing, Analysis and Machine Vision Milan Sonka PhD University of Iowa Iowa City, USA Vaclav Hlavac PhD Czech Technical University Prague, Czech Republic and Roger Boyle DPhil, MBCS, CEng University
More informationMedical Image Processing using MATLAB
Medical Image Processing using MATLAB Emilia Dana SELEŢCHI University of Bucharest, Romania ABSTRACT 2. 3. 2. IMAGE PROCESSING TOOLBOX MATLAB and the Image Processing Toolbox provide a wide range of advanced
More informationTransportation Informatics Group, ALPEN-ADRIA University of Klagenfurt. Transportation Informatics Group University of Klagenfurt 12/24/2009 1
Machine Vision Transportation Informatics Group University of Klagenfurt Alireza Fasih, 2009 12/24/2009 1 Address: L4.2.02, Lakeside Park, Haus B04, Ebene 2, Klagenfurt-Austria 2D Shape Based Matching
More informationDigital Image Processing
Digital Image Processing Part 9: Representation and Description AASS Learning Systems Lab, Dep. Teknik Room T1209 (Fr, 11-12 o'clock) achim.lilienthal@oru.se Course Book Chapter 11 2011-05-17 Contents
More informationImage Processing and Analysis
Image Processing and Analysis 3 stages: Image Restoration - correcting errors and distortion. Warping and correcting systematic distortion related to viewing geometry Correcting "drop outs", striping and
More informationCOSC160: Detection and Classification. Jeremy Bolton, PhD Assistant Teaching Professor
COSC160: Detection and Classification Jeremy Bolton, PhD Assistant Teaching Professor Outline I. Problem I. Strategies II. Features for training III. Using spatial information? IV. Reducing dimensionality
More informationCMPUT 206. Introduction to Digital Image Processing
CMPUT 206 Introduction to Digital Image Processing Overview. What is a pixel in an image? 2. How does Photoshop, + human assistance, detect an edge in a picture/photograph? 3. Behind Photoshop - How does
More informationCS4442/9542b Artificial Intelligence II prof. Olga Veksler
CS4442/9542b Artificial Intelligence II prof. Olga Veksler Lecture 2 Computer Vision Introduction, Filtering Some slides from: D. Jacobs, D. Lowe, S. Seitz, A.Efros, X. Li, R. Fergus, J. Hayes, S. Lazebnik,
More informationAssignment 6: Ray Tracing
Assignment 6: Ray Tracing Programming Lab Due: Monday, April 20 (midnight) 1 Introduction Throughout this semester you have written code that manipulated shapes and cameras to prepare a scene for rendering.
More informationArtifacts and Textured Region Detection
Artifacts and Textured Region Detection 1 Vishal Bangard ECE 738 - Spring 2003 I. INTRODUCTION A lot of transformations, when applied to images, lead to the development of various artifacts in them. In
More informationOpenGL shaders and programming models that provide object persistence
OpenGL shaders and programming models that provide object persistence COSC342 Lecture 22 19 May 2016 OpenGL shaders We discussed forms of local illumination in the ray tracing lectures. We also saw that
More informationCHAPTER 3 IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN
CHAPTER 3 IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN CHAPTER 3: IMAGE ENHANCEMENT IN THE SPATIAL DOMAIN Principal objective: to process an image so that the result is more suitable than the original image
More informationOCR and OCV. Tom Brennan Artemis Vision Artemis Vision 781 Vallejo St Denver, CO (303)
OCR and OCV Tom Brennan Artemis Vision Artemis Vision 781 Vallejo St Denver, CO 80204 (303)832-1111 tbrennan@artemisvision.com www.artemisvision.com About Us Machine Vision Integrator Turnkey Systems OEM
More informationDepth estimation from stereo image pairs
Depth estimation from stereo image pairs Abhranil Das In this report I shall first present some analytical results concerning depth estimation from stereo image pairs, then describe a simple computational
More informationEECS 556 Image Processing W 09. Image enhancement. Smoothing and noise removal Sharpening filters
EECS 556 Image Processing W 09 Image enhancement Smoothing and noise removal Sharpening filters What is image processing? Image processing is the application of 2D signal processing methods to images Image
More informationChapter 3: Intensity Transformations and Spatial Filtering
Chapter 3: Intensity Transformations and Spatial Filtering 3.1 Background 3.2 Some basic intensity transformation functions 3.3 Histogram processing 3.4 Fundamentals of spatial filtering 3.5 Smoothing
More informationBiomedical Image Analysis. Mathematical Morphology
Biomedical Image Analysis Mathematical Morphology Contents: Foundation of Mathematical Morphology Structuring Elements Applications BMIA 15 V. Roth & P. Cattin 265 Foundations of Mathematical Morphology
More information03 Vector Graphics. Multimedia Systems. 2D and 3D Graphics, Transformations
Multimedia Systems 03 Vector Graphics 2D and 3D Graphics, Transformations Imran Ihsan Assistant Professor, Department of Computer Science Air University, Islamabad, Pakistan www.imranihsan.com Lectures
More informationChapter 6 Visualization Techniques for Vector Fields
Chapter 6 Visualization Techniques for Vector Fields 6.1 Introduction 6.2 Vector Glyphs 6.3 Particle Advection 6.4 Streamlines 6.5 Line Integral Convolution 6.6 Vector Topology 6.7 References 2006 Burkhard
More informationSurface Rendering. Surface Rendering
Surface Rendering Surface Rendering Introduce Mapping Methods - Texture Mapping - Environmental Mapping - Bump Mapping Go over strategies for - Forward vs backward mapping 2 1 The Limits of Geometric Modeling
More informationFeature Descriptors. CS 510 Lecture #21 April 29 th, 2013
Feature Descriptors CS 510 Lecture #21 April 29 th, 2013 Programming Assignment #4 Due two weeks from today Any questions? How is it going? Where are we? We have two umbrella schemes for object recognition
More informationComputer Vision & Digital Image Processing. Image segmentation: thresholding
Computer Vision & Digital Image Processing Image Segmentation: Thresholding Dr. D. J. Jackson Lecture 18-1 Image segmentation: thresholding Suppose an image f(y) is composed of several light objects on
More information3D Polygon Rendering. Many applications use rendering of 3D polygons with direct illumination
Rendering Pipeline 3D Polygon Rendering Many applications use rendering of 3D polygons with direct illumination 3D Polygon Rendering What steps are necessary to utilize spatial coherence while drawing
More informationthe gamedesigninitiative at cornell university Lecture 16 Color and Textures
Lecture 6 Color and Textures Take Away For Today Image color and composition What is RGB model for images? What does alpha represent? How does alpha composition work? Graphics primitives How do primitives
More information: Easy 3D Calibration of laser triangulation systems. Fredrik Nilsson Product Manager, SICK, BU Vision
: Easy 3D Calibration of laser triangulation systems Fredrik Nilsson Product Manager, SICK, BU Vision Using 3D for Machine Vision solutions : 3D imaging is becoming more important and well accepted for
More informationScheme Extensions Aa thru Lz
Chapter 2. Scheme Extensions Aa thru Lz Topic: Ignore Scheme is a public domain programming language, based on the LISP language, that uses an interpreter to run commands. ACIS provides extensions (written
More informationthe gamedesigninitiative at cornell university Lecture 17 Color and Textures
Lecture 7 Color and Textures Take Away For Today Image color and composition What is RGB model for images? What does alpha represent? How does alpha composition work? Graphics primitives How do primitives
More informationComputer Vision and Graphics (ee2031) Digital Image Processing I
Computer Vision and Graphics (ee203) Digital Image Processing I Dr John Collomosse J.Collomosse@surrey.ac.uk Centre for Vision, Speech and Signal Processing University of Surrey Learning Outcomes After
More informationComputer Graphics and Image Processing
Computer Graphics and Image Processing Lecture B2 Point Processing Joseph Niepce, 1826. The view from my window 1 Context How much input is used to compute an output value? Point Transforms Region Transforms
More informationReview: Rough Structure
Break Out Canvas Tutorial con/nue Simple Game: Break Out Animate, Game Elements ª Breakout ª Bill Mill Modified Tutorial So?ware developer in Maryland Elements: ª Color ª Collision Detec/on ª Interac/on
More informationLecture: Edge Detection
CMPUT 299 Winter 2007 Lecture: Edge Detection Irene Cheng Overview. What is a pixel in an image? 2. How does Photoshop, + human assistance, detect an edge in a picture/photograph? 3. Behind Photoshop -
More informationSegmenting an Image Assigning labels to pixels (cat, ball, floor) Point processing: Lecture 3: Region Based Vision. Overview
Slide 2 Lecture 3: Region Based Vision Dr Carole Twining Thursday 18th March 1:00pm 1:50pm Segmenting an Image Assigning labels to pixels (cat, ball, floor) Point processing: colour or grayscale values,
More information(Refer Slide Time 00:17) Welcome to the course on Digital Image Processing. (Refer Slide Time 00:22)
Digital Image Processing Prof. P. K. Biswas Department of Electronics and Electrical Communications Engineering Indian Institute of Technology, Kharagpur Module Number 01 Lecture Number 02 Application
More informationDigital Image Processing COSC 6380/4393
Digital Image Processing COSC 6380/4393 Lecture 6 Sept 6 th, 2017 Pranav Mantini Slides from Dr. Shishir K Shah and Frank (Qingzhong) Liu Today Review Logical Operations on Binary Images Blob Coloring
More informationChapter4: HTML Table and Script page, HTML5 new forms. Asst. Prof. Dr. Supakit Nootyaskool Information Technology, KMITL
Chapter4: HTML Table and Script page, HTML5 new forms Asst. Prof. Dr. Supakit Nootyaskool Information Technology, KMITL Objective To know HTML5 creating a new style form. To understand HTML table benefits
More informationObject Oriented Shadow Detection and an Enhanced Method for Shadow Removal
Object Oriented Shadow Detection and an Enhanced Method for Shadow Removal Divya S Kumar Department of Computer Science and Engineering Sree Buddha College of Engineering, Alappuzha, India divyasreekumar91@gmail.com
More informationmith College Computer Science CSC103 How Computers Work Week 7 Fall 2017 Dominique Thiébaut
mith College Computer Science CSC103 How Computers Work Week 7 Fall 2017 Dominique Thiébaut dthiebaut@smith.edu Important Review Does the animation leave a trace? Are the moving objects move without a
More informationThe use of image analysis to quantify the orientation of cracks in concrete
Downloaded from orbit.dtu.dk on: Jan 24, 2018 The use of image analysis to quantify the orientation of cracks in concrete Andreassen, Einar N. ; Elbrønd, Andreas B.; Hasholt, Marianne Tange Published in:
More informationCS4442/9542b Artificial Intelligence II prof. Olga Veksler
CS4442/9542b Artificial Intelligence II prof. Olga Veksler Lecture 8 Computer Vision Introduction, Filtering Some slides from: D. Jacobs, D. Lowe, S. Seitz, A.Efros, X. Li, R. Fergus, J. Hayes, S. Lazebnik,
More informationGeometric Accuracy Evaluation, DEM Generation and Validation for SPOT-5 Level 1B Stereo Scene
Geometric Accuracy Evaluation, DEM Generation and Validation for SPOT-5 Level 1B Stereo Scene Buyuksalih, G.*, Oruc, M.*, Topan, H.*,.*, Jacobsen, K.** * Karaelmas University Zonguldak, Turkey **University
More information