Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data.

Slides:



Advertisements
Similar presentations
Convolution. Why? Image processing Remove noise from images (e.g. poor transmission (from space), measurement (X-Rays))
Advertisements

CS Spring 2009 CS 414 – Multimedia Systems Design Lecture 4 – Digital Image Representation Klara Nahrstedt Spring 2009.
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
Digital Image Processing
Learning with Inference for Discrete Graphical Models Nikos Komodakis Pawan Kumar Nikos Paragios Ramin Zabih (presenter)
Computer vision: models, learning and inference Chapter 13 Image preprocessing and feature extraction.
Multimedia communications EG 371Dr Matt Roach Multimedia Communications EG 371 and EE 348 Dr Matt Roach Lecture 6 Image processing (filters)
Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data.
Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data.
Computer Vision Group Edge Detection Giacomo Boracchi 5/12/2007
Image Filtering CS485/685 Computer Vision Prof. George Bebis.
Canny Edge Detector.
Computer Vision - A Modern Approach Set: Linear Filters Slides by D.A. Forsyth Differentiation and convolution Recall Now this is linear and shift invariant,
Multimedia Data Introduction to Image Processing Dr Mike Spann Electronic, Electrical and Computer.
Edge detection. Edge Detection in Images Finding the contour of objects in a scene.
Image processing. Image operations Operations on an image –Linear filtering –Non-linear filtering –Transformations –Noise removal –Segmentation.
Computer Vision - A Modern Approach
CS 376b Introduction to Computer Vision 02 / 27 / 2008 Instructor: Michael Eckmann.
Gradient Methods May Preview Background Steepest Descent Conjugate Gradient.
1 Image Filtering Readings: Ch 5: 5.4, 5.5, 5.6,5.7.3, 5.8 (This lecture does not follow the book.) Images by Pawan SinhaPawan Sinha formal terminology.
CS443: Digital Imaging and Multimedia Filters Spring 2008 Ahmed Elgammal Dept. of Computer Science Rutgers University Spring 2008 Ahmed Elgammal Dept.
Announcements Send to the TA for the mailing list For problem set 1: turn in written answers to problems 2 and 3. Everything.
Linear Filtering About modifying pixels based on neighborhood. Local methods simplest. Linear means linear combination of neighbors. Linear methods simplest.
Computer Vision P. Schrater Spring 2003
Image Filtering. Problem! Noise is a problem, even in images! Gaussian NoiseSalt and Pepper Noise.
Basic Image Processing January 26, 30 and February 1.
CS 376b Introduction to Computer Vision 02 / 26 / 2008 Instructor: Michael Eckmann.
Machine Vision ENT 273 Image Filters Hema C.R. Lecture 5.
University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell Image processing.
Multimedia Data Introduction to Image Processing Dr Sandra I. Woolley Electronic, Electrical.
09/19/2002 (C) University of Wisconsin 2002, CS 559 Last Time Color Quantization Dithering.
CSC508 Convolution Operators. CSC508 Convolution Arguably the most fundamental operation of computer vision It’s a neighborhood operator –Similar to the.
October 7, 2014Computer Vision Lecture 9: Edge Detection II 1 Laplacian Filters Idea: Smooth the image, Smooth the image, compute the second derivative.
Digital Image Processing Lecture 16: Segmentation: Detection of Discontinuities Prof. Charlene Tsai.
Edge Detection and Geometric Primitive Extraction Jinxiang Chai.
Clustering Prof. Ramin Zabih
Charge Sharing & Hit Identification & Cluster Information.
Edges.
1  The Problem: Consider a two class task with ω 1, ω 2   LINEAR CLASSIFIERS.
Lecture 5: Statistical Methods for Classification CAP 5415: Computer Vision Fall 2006.
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 4 – Audio and Digital Image Representation Klara Nahrstedt Spring 2010.
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
More digital 244 wk 12 Perry Sprawls, Ph.D. Professor Emeritus Department of Radiology Emory University School of Medicine Atlanta, GA,
September 26, 2013Computer Vision Lecture 8: Edge Detection II 1Gradient In the one-dimensional case, a step edge corresponds to a local peak in the first.
Filters– Chapter 6. Filter Difference between a Filter and a Point Operation is that a Filter utilizes a neighborhood of pixels from the input image to.
Spatial Filtering (Chapter 3) CS474/674 - Prof. Bebis.
Edge Detection Phil Mlsna, Ph.D. Dept. of Electrical Engineering Northern Arizona University.
Miguel Tavares Coimbra
Linear Filters and Edges Chapters 7 and 8
Signal processing.
A Gentle Introduction to Bilateral Filtering and its Applications
Image gradients and edges
Computer Vision Lecture 9: Edge Detection II
Image gradients and edges April 11th, 2017
Dr. Chang Shu COMP 4900C Winter 2008
Computer Vision Lecture 16: Texture II
Dealing with Noisy Data
Prof. Ramin Zabih Least squares fitting Prof. Ramin Zabih
a kind of filtering that leads to useful features
Spatial operations and transformations
Canny Edge Detector.
Basic Image Processing
Fourier Optics P47 – Optics: Unit 8.
Digital Image Processing Week IV
ML – Lecture 3B Deep NN.
Midterm Exam Closed book, notes, computer Similar to test 1 in format:
Image Filtering Readings: Ch 5: 5. 4, 5. 5, 5. 6, , 5
Spatial operations and transformations
Presentation transcript:

Prof. Ramin Zabih (CS) Prof. Ashish Raj (Radiology) CS5540: Computational Techniques for Analyzing Clinical Data

Administrivia  We’re going to try to end class by 2:25 –Like the registrar believes  Sign up online! 2

ShockableNon shockable Preview of Project #1 3

Algorithms  Dynamic programming  Graph algorithms, esp. min cut  Fitting via least squares & its variants  Gradient descent, conjugate gradient, PCG  k-NN, SVM classification 4

Today’s topics  General methods for analyzing 1D data –Like an ECG –General (as opposed to model-based) techniques are usually more successful  Today we will look at finding the cycles and the pulses 5

Cycles and pulses 6 Cycle Pulse Note: cycle is standard terminology, but pulse is not. The ECG literature calls these “waves” but we want to be more general than just ECG.

Ideal pulses: P, Q, R, S, T 7

Why a general method?? 8

Ideas?  Let’s try to find the places where the ECG goes above or below its baseline  Almost all medical measurements are in physical units, which is unusual –In a picture, someone’s smile might be 100 pixels wide –How big is a pixel?? 9

ECG graph paper 10

Strategy  Find the long-term trend (0 for ECG) and detect when the ECG crosses this value –This looks too simple. –It is too simple. 11

The problem 12

What is going wrong?  If we look closely the data has a lot of small “wiggles” in it –Usually called “noise” There are technical uses of the term, but in practice it means small unmodeled variations –Why do you see this in ECG data? 13

Idea: local averaging  The obvious way to solve this problem, which turns out to be remarkably powerful  Summary: replace every data point by the average with its two neighbors out[t] = 1/3 in[t-1] + 1/3 in[t] + 1/3 in[t+1] Example: [… …] => [… …] –We can write this as a stencil [1/3 1/3 1/3] which is applied to the sequence At every point, multiply each neighbor by the stencil’s value –Wider average: [1/5 1/5 1/5 1/5 1/5] 14

Local averaging in action 15

Convolution  This idea (generalized to arbitrary stencils) is called convolution –Procedurally, it is totally trivial  Remarkably useful and deep  Useful both for smoothing but also for finding things of known shape –Such as, e.g., a (normal) ECG pulse –Not a panacea, but a vital tool 16

Convolution for smoothing  The standard way to remove noise is by convolution with a Gaussian (“bell curve”) –Colloquially called a “low pass filter”  Why a Gaussian? –If you really care, the central limit theorem plus a few other important properties –It also generally works pretty well 17

Parameters  How wide an average do you need?  This is not remotely obvious, and there aren’t any great ideas about it  More annoyingly, it makes a huge impact on practical performance –Too little smoothing means too many zero crossings (like original data) –Too much smoothing means whole ECG it completely blurred out Can only see cycles, not peaks! 18

Smoothing parameter effects 19

Matched filters  Convolution can be used to find pulses –This is actually closely related to smoothing –Ashish’s talk on Friday mentioned a few applications of this to images  How do we find a known pulse in an ECG? Convolve the ECG with our template! –E.g. to find something in the ECG that looks like [ ] we convolve with [ ]  Question: what sense does this make? –Anecdotally it worked for finding boxes 20

Box finding example 21

Pulse finding example 22

Why does this work?  Some nice optimality properties, but the way I described it, the algorithm fails  Idea: the [ ] template gives biggest response when signal is [… …] –Value is 137 at this point  But is this actually correct? –You actually need both the template and the ECG to have a zero mean and unit energy (sum of squares) Easily accomplished: subtract -1, then divide by 137, get 1/137 * [2 7 -9] 23

Geometric intuition  Taking the dot product of two vectors –Recall [a b c]  [e f g] = ae + bf + cg –Basically the projection of a vector on another  The normalized vector with the biggest projection on x is, of course: x! 24