Presented by: Avner Gidron Presented to : Prof. Hagit Hel-Or.

Slides:



Advertisements
Similar presentations
Clustering. How are we doing on the pass sequence? Pretty good! We can now automatically learn the features needed to track both people But, it sucks.
Advertisements

Transform-based Non-local Methods for Image Restoration IT530, Lecture Notes.
Arithmetic of random variables: adding constants to random variables, multiplying random variables by constants, and adding two random variables together.
CSC321: Introduction to Neural Networks and Machine Learning Lecture 24: Non-linear Support Vector Machines Geoffrey Hinton.
Review of 1-D Fourier Theory:
CS 450: COMPUTER GRAPHICS LINEAR ALGEBRA REVIEW SPRING 2015 DR. MICHAEL J. REALE.
3D Geometry for Computer Graphics
Principal Component Analysis Based on L1-Norm Maximization Nojun Kwak IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008.
Color Imaging Analysis of Spatio-chromatic Decorrelation for Colour Image Reconstruction Mark S. Drew and Steven Bergner
Change Detection C. Stauffer and W.E.L. Grimson, “Learning patterns of activity using real time tracking,” IEEE Trans. On PAMI, 22(8): , Aug 2000.
November 12, 2013Computer Vision Lecture 12: Texture 1Signature Another popular method of representing shape is called the signature. In order to compute.
Computer vision: models, learning and inference Chapter 13 Image preprocessing and feature extraction.
Segmentation via Maximum Entropy Model. Goals Is it possible to learn the segmentation problem automatically? Using a model which is frequently used in.
Foreground Modeling The Shape of Things that Came Nathan Jacobs Advisor: Robert Pless Computer Science Washington University in St. Louis.
Visual Recognition Tutorial
Principal Component Analysis CMPUT 466/551 Nilanjan Ray.
School of Computing Science Simon Fraser University
 Introduction  Principles of context – aware saliency  Detection of context – aware saliency  Result  Application  Conclusion.
Stas Goferman Lihi Zelnik-Manor Ayellet Tal. …
1 Learning to Detect Objects in Images via a Sparse, Part-Based Representation S. Agarwal, A. Awan and D. Roth IEEE Transactions on Pattern Analysis and.
Region Segmentation. Find sets of pixels, such that All pixels in region i satisfy some constraint of similarity.
(1) Feature-point matching by D.J.Duff for CompVis Online: Feature Point Matching Detection,
Segmentation Divide the image into segments. Each segment:
Fractal Image Compression
2D Fourier Theory for Image Analysis Mani Thomas CISC 489/689.
1 Computer Science 631 Lecture 4: Wavelets Ramin Zabih Computer Science Department CORNELL UNIVERSITY.
Face Collections : Rendering and Image Processing Alexei Efros.
A Novel 2D To 3D Image Technique Based On Object- Oriented Conversion.
Smart Traveller with Visual Translator for OCR and Face Recognition LYU0203 FYP.
Pattern Recognition. Introduction. Definitions.. Recognition process. Recognition process relates input signal to the stored concepts about the object.
FLANN Fast Library for Approximate Nearest Neighbors
Introduction of Saliency Map
1 Activity and Motion Detection in Videos Longin Jan Latecki and Roland Miezianko, Temple University Dragoljub Pokrajac, Delaware State University Dover,
Crash Course on Machine Learning
Tal Mor  Create an automatic system that given an image of a room and a color, will color the room walls  Maintaining the original texture.
SVD(Singular Value Decomposition) and Its Applications
Applications of Image Filters Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/04/10.
Last tuesday, you talked about active shape models Data set of 1,500 hand-labeled faces 20 facial features (eyes, eye brows, nose, mouth, chin) Train 40.
SVCL Automatic detection of object based Region-of-Interest for image compression Sunhyoung Han.
Multiscale Moment-Based Painterly Rendering Diego Nehab and Luiz Velho
Simplifying Rational Expressions – Part II
September 5, 2013Computer Vision Lecture 2: Digital Images 1 Computer Vision A simple two-stage model of computer vision: Image processing Scene analysis.
Line detection Assume there is a binary image, we use F(ά,X)=0 as the parametric equation of a curve with a vector of parameters ά=[α 1, …, α m ] and X=[x.
December 9, 2014Computer Vision Lecture 23: Motion Analysis 1 Now we will talk about… Motion Analysis.
CS654: Digital Image Analysis
Computer Graphics and Image Processing (CIS-601).
Geodesic Saliency Using Background Priors
Region-Based Saliency Detection and Its Application in Object Recognition IEEE TRANSACTIONS ON CIRCUITS AND SYSTEM FOR VIDEO TECHNOLOGY, VOL. 24 NO. 5,
Templates, Image Pyramids, and Filter Banks
Clustering Prof. Ramin Zabih
Spatiotemporal Saliency Map of a Video Sequence in FPGA hardware David Boland Acknowledgements: Professor Peter Cheung Mr Yang Liu.
Supervisor: Nakhmani Arie Semester: Winter 2007 Target Recognition Harmatz Isca.
Stas Goferman Lihi Zelnik-Manor Ayellet Tal Technion.
A Model of Saliency-Based Visual Attention for Rapid Scene Analysis
 In the previews parts we have seen some kind of segmentation method.  In this lecture we will see graph cut, which is a another segmentation method.
November 5, 2013Computer Vision Lecture 15: Region Detection 1 Basic Steps for Filtering in the Frequency Domain.
Lecture 5: Statistical Methods for Classification CAP 5415: Computer Vision Fall 2006.
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
May 2003 SUT Color image segmentation – an innovative approach Amin Fazel May 2003 Sharif University of Technology Course Presentation base on a paper.
1 Objective To provide background material in support of topics in Digital Image Processing that are based on matrices and/or vectors. Review Matrices.
Independent Component Analysis features of Color & Stereo images Authors: Patrik O. Hoyer Aapo Hyvarinen CIS 526: Neural Computation Presented by: Ajay.
Another Example: Circle Detection
CSC2535: Computation in Neural Networks Lecture 11 Extracting coherent properties by maximizing mutual information across space or time Geoffrey Hinton.
- photometric aspects of image formation gray level images
Dimensionality Reduction
Computer Vision Lecture 13: Image Segmentation III
Saliency detection Donghun Yeo CV Lab..
Saliency, Scale and Image Description (by T. Kadir and M
Computer Vision Lecture 16: Texture II
Presentation transcript:

Presented by: Avner Gidron Presented to : Prof. Hagit Hel-Or

SALIENCY – DEFINITION Saliency is defined as the most Prominent part of the picture. In the last lecture Reem has defined it as a part that takes at least one half of the pixels in the picture. We’ll see that it is not always the case, and Saliency has more than one definition.

SALIENCY – DEFINITION What is salient here?

SALIENCY – DEFINITION Answer:

SALIENCY – DEFINITION Here we can see that although the grass has more Variance in color and texture the horse is the salient part.

SALIENCY – DEFINITION Image can have more than one salient area, and As a result areas that are more salient than others: Salient areas: Also salient, but less.

SALIENCY – DEFINITION Our objective – saliency map:

Sometimes all you need are a few words of encouragement.

How would you divide this picture to segments?

A possible answer: Two segments:  The swimmer  The background

Motivation - application Image mosaicking: the salient details are preserved, with the use of smaller building blocks.

Motivation - application input Painterly rendering Painterly rendering – the fine details of the dominant objects are maintained, abstracting the background

So, what are we going to see today?  Automatic detecting single objects (Local).  Automatic detecting fixation points (Global).  Global + Local approach.  Explanation on Saliency in human eyes.

Saliency in human eyes

Our eyes detect Saliency by: Saliency in human eyes First, the parallel, fast, but simple pre-attentive process, attracted to:  Movement.  High contrast.  Intensity. Will be attracted here

Then, the serial, slow but complex attention process, that takes the points found in the first stage and chooses which one to focus on while detecting new information. Saliency in human eyes

Slow attention process – example: Firs focus here: And then notice the cat and Baby.

Saliency in human eyes Example for saliency map by eye tracking:

Detecting single objects One approach to saliency is to consider saliency as a single object prominent in the image An Algorithm using this approach is the Spectral Residual Approach

Spectral Residual Approach Try to remember from IP lessons. What did we say that image Consists of? That’s right!!! Frequencies

Spectral Residual Approach (1) Terns out, that if we will take the average frequency domain of many natural images, it will look like this:

Spectral Residual Approach (2) Based on this notion, if we take the average frequency domain and subtract it from a specific Image frequency domain we will get Spectral Residual

ImageTransform = fft2(Image); logSpec = log(1+ abs(ImageTransform)); Spectral Residual Approach The log spec. of Image is defined in matlab as:

Spectral Residual Approach - example

Spectral Residual Approach

At this stage, we’ll perform inverse fft and go back to The space domain. In matlab: SaliencyImage = ifft2(ImageSpecResidual);

Spectral Residual Approach And we will take a threshold to determine the Object map: The saliency map:

Detecting fixation points Another approach is to detect points in the image where the human eye would be fixated on. Not like spectral residual approach, which finds a single point, this approach may find more than one point. One algorithm that uses this approach is the one based on Information Maximization.

Information Maximization Before we start, let’s define a few things Self information: For a probabilistic event, with a probability of p(x), the self information is defined as:

Information Maximization For example: But in self information: An Attribute of self information is that the smaller the probability the larger the self information

Information Maximization Another thing we’ll explain is what does Independent Component Analysis (ICA) Algorithm.

Information Maximization ICA numeric example:

Information Maximization The answer:

Information Maximization And in signals:

Information Maximization – ICA vs PCA PCA, Principal Components Analysis- a statistic method for finding a low dim. Representation for a large dimensional data. * Fourier basis are PCA components of natural images

Information Maximization – ICA vs PCA The different between them is that PCA find his Components one after the other, in a greedy way, finding the largest component each time, while paying attention to ortogonalty. the ICA works in parallel finding all the components at once, while paying attention to independency.

Information Maximization – ICA vs PCA PCA ICA

We start with a collection of 360,000 Random patches and activate ICA on them, to get A which is a set of Basis Function. Information Maximization – max info algorithm

Now, we have the basis function that “created” the image, and we would like to know what are the coefficients of each basis function per pixel. We take the pseudoinverse of A, and multiply it with the image: Information Maximization – max info algorithm

In one dim:

Information Maximization – max info algorithm

A little bit of math: distance of s,t to j,k. Similarity of the coefficients Information Maximization – max info algorithm

Pixel j,k Pixel m,l

Information Maximization – max info algorithm

The more similar the pixel coefficients are to it’s neighbor‘s coefficients the lower the prob. And thus The smaller the self information, and vice versa. Information Maximization – max info algorithm

Information Maximization For example in the follow image we can see that the white area will have little “stability” in the coefficients, and therefore small P(X) and so it will have large S.I. We can also notice that that fact go hand in hand with This area being prominent. Large self information

Now, we can take the values of the self information and turn it in to a saliency map!! Information Maximization – max info algorithm

And we get:

And the results are: original Information max. Human eye Information Maximization – max info algorithm

original Information max. Human eye Information Maximization – max info algorithm

Global + Local approach This approach uses the information from both the Pixel close surroundings and the information in the Entire picture, because sometimes one of them alone Isn’t enough. inputLocal Global

One algorithm that do so, uses a new kind of definition for saliency, were the salient part in the picture is not only a single object but it’s surroundings too. This definition is named Context aware saliency Context aware saliency What do you see? And now?

Context aware saliency algorithm (1) Local low-level considerations, including factors such as contrast and color (2) Global considerations, which suppress frequently Occurring features (3) Visual organization rules, which state that visual Forms may possess one or several centers of attention. (4) High- level factors, such as priors on the salient Object location.

A little math reminder: The Euclidean distance between two vectors X,Y is defined as:

The basic idea is to determine the similarity of a pixels sized r patch, to other patches’ both locally and globally Context aware saliency algorithm

CIE values of (3,4,5) (Y) CIE values of (5,4,3) (X)

Context aware saliency algorithm CIE values of (60,30,90) (Y) CIE values of (5,4,3) (X)

Context aware saliency algorithm

Actually, we don’t really need to check each patch to all other patches, but only to his K(=64) most similar patches: How to find the K most similar patches? We’ll go back to it

Context aware saliency algorithm

Pixel j Pixel i Pixel l

Now we can define dissimilarity as: Context aware saliency algorithm

Now, because we know that pixel i is salient if it differs from it’s K most similar patches, we can define single scale saliency value:

Context aware saliency algorithm We can see that the larger the dissimilarity between the patches the larger the saliency is.

Context aware saliency algorithm A patches size doesn't have to be all in the same sizes, we can have multiple sizes of patches. Size r

Context aware saliency algorithm

And we define the temporary saliency of pixel i as: For: used where M is the number of scales

Context aware saliency algorithm Center of attention - center of attention are the pixels who has the strongest saliency. All their surrounding will be salient too. We find them by preforming a threshold on the salient pixels For example: Input: Saliency map: Centers of attention:

Context aware saliency algorithm One more thing we want to consider is the salient pixels surroundings, because as we saw before it may be important to us.

Context aware saliency algorithm

Large drop-off: Small drop-off:

Context aware saliency algorithm Const. that controls the drop-off rate

Context aware saliency algorithm To understand it, let’s simplify it: Constant for all i‘s

Context aware saliency algorithm Don’t panic!! it’s just their way to express the distance of pixel i to the nearest center of attention, In relation to the entire picture:

Context aware saliency algorithm And now the temporary saliency is:

Context aware saliency algorithm Now, if you’ll think about how you usually take pictures, You will notice that in most cases the prominent object :Is in the center of your image

Context aware saliency algorithm Using that assumption we can give a pixel priority based On its closeness to the middle. So the final saliency is:

Context aware saliency algorithm How do we find the K closest patches to a given patch??? Instead of looking at the real size image, lets build a pyramid

Context aware saliency algorithm The idea, is to search in a small version of the image, and then by it focus our search in the real image.

Context aware saliency algorithm Let’s see some results and rest a little from all that math:

A few more Saliency uses: Puzzle-like collage:

A few more Saliency uses: Movie Time

REFERENCES Saliency detection: A spectral residual approach. X. Hou and L. Zhang.In CVPR, pages 1{8}, 2007 Saliency based on information maximization. N. Bruce and J. Tsotsos. In NIPS, volume 18, page 155, 2006.

Saliency For Image Manipulation", R. Margolin, L. Zelnik-Manor, and A. Tal Computer Graphics International (CGI) REFERENCES S. Goferman, L. Zelnik-Manor, and A. Tal "Context-Aware Saliency Detection", IEEE Trans. on Pattern Analysis and Machine Intelligence (PAMI), 34(10): , Oct