Amit Presentation Finalv1.1

78
Information Searching Information Searching using Image-Query using Image-Query May 20, 2012 May 20, 2012 1 1  Jamia Hamdard, New Delhi  Jamia Hamdard, New Delhi By By Amit Marwah  Amit M arwah B.Tech (IT) B.Tech (IT) 2008-311-006 2008-311-006  

Transcript of Amit Presentation Finalv1.1

Page 1: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 1/78

Information SearchingInformation Searchingusing Image-Queryusing Image-Query

May 20, 2012May 20, 2012 11 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

By By Amit Marwah Amit Marwah

B.Tech (IT)B.Tech (IT)2008-311-0062008-311-006

 

Page 2: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 2/78

ContentsContents

IntroductionIntroduction

Image Processing - Various MethodsImage Processing - Various Methods

Overview of - GoogleOverview of - Google Overview of –XamppOverview of –Xampp

Overview of – DrupalOverview of – Drupal

May 20, 2012May 20, 2012 22 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 3: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 3/78

IntroductionIntroduction

““Image-Query" means that theImage-Query" means that the

information search will analyze theinformation search will analyze the

actual contents of the query imageactual contents of the query image

rather than therather than the metadatametadata such assuch as

keywords, tags, and/or descriptionskeywords, tags, and/or descriptions

associated with the image. Hereassociated with the image. Here

'content‘ refers to colors, shapes,'content‘ refers to colors, shapes,textures, or any other informationtextures, or any other information

that can be derived from the imagethat can be derived from the image

itself.itself.May 20, 2012May 20, 2012 33 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 4: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 4/78

OverviewOverview

Texture 

Feature extractio

n

Color 

Feature extractio

n

Image DB

Shape

Feature extractio

n

Feature extractio

n

Feature vector

Combination

Feature DB

Similarity

Computation

Q

u

er 

y

 I

m

a

g

e

R e

t

i

e

ve

d

 

I

m

ag

e

May 20, 2012May 20, 2012 44 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 5: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 5/78

Content Based Image RetrievalContent Based Image Retrieval

May 20, 2012May 20, 2012 55 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 6: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 6/78

Content Based Image RetrievalContent Based Image Retrieval

Content-based image retrieval (CBIR)Content-based image retrieval (CBIR) a query bya query byimage content (QBIC)image content (QBIC)

Content-based visual information retrievalContent-based visual information retrieval ((CBVIRCBVIR) is) isan application of computer vision techniques to the imagean application of computer vision techniques to the imageretrieval problem, that is, the problem of searching forretrieval problem, that is, the problem of searching fordigital images in large databases.digital images in large databases.

May 20, 2012May 20, 2012 66 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 7: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 7/78

Why CBIR ?Why CBIR ?

CBIR is desirable because:CBIR is desirable because:

Most web based image search engines rely purely on metadata and thisMost web based image search engines rely purely on metadata and thisproduces a lot of garbage in the results.produces a lot of garbage in the results.

Humans manually entering keywords for images in a large database isHumans manually entering keywords for images in a large database isinefficient, expensive and may not capture every keyword that describesinefficient, expensive and may not capture every keyword that describesthe image.the image.

CBIR is a System that would filter images based on their content andCBIR is a System that would filter images based on their content andprovide better indexing and return more accurate results.provide better indexing and return more accurate results.

May 20, 2012May 20, 2012 77 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 8: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 8/78

Content Based Image RetrievalContent Based Image Retrieval

TechniquesTechniques  Query by example:Query by example:

is a query technique that involves providing the CBIR system with an exampleis a query technique that involves providing the CBIR system with an exampleimage that it will then base its search upon. The underlying search algorithmsimage that it will then base its search upon. The underlying search algorithmsmay vary depending on the application, but result images should all sharemay vary depending on the application, but result images should all sharecommon elements with the provided example.common elements with the provided example.

Ways for providing example images to theWays for providing example images to the

system:system:

Pre-existing image supplied by the user or chosen from a random set.Pre-existing image supplied by the user or chosen from a random set.  The user draws a rough approximation of the image as a query. The user draws a rough approximation of the image as a query.

Semantic retrieval Semantic retrieval  User makes a request like "find pictures of Lion" or even "find pictures of User makes a request like "find pictures of Lion" or even "find pictures of 

Nehru".Nehru".

Challenge:Challenge: Problem of retrieving images on the basis of Problem of retrieving images on the basis of 

their pixel content remains largely unsolved astheir pixel content remains largely unsolved asof now.of now.

May 20, 2012May 20, 2012 88 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 9: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 9/78

CBIR – Content comparisonCBIR – Content comparison

AnAn Image Distance MeasureImage Distance Measure compares the similarity of compares the similarity of 

two images in various dimensions Color, texture, shapetwo images in various dimensions Color, texture, shape A distance of 0 signifies an exact match with the query,A distance of 0 signifies an exact match with the query,

with respect to the dimensions.with respect to the dimensions.

A value greater than 0 indicates various degrees of A value greater than 0 indicates various degrees of similarities between the images. Search results then can besimilarities between the images. Search results then can be

sorted based on their distance to the queried image.sorted based on their distance to the queried image.

May 20, 2012May 20, 2012 99 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 10: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 10/78

CBIR – A sample search queryCBIR – A sample search query

User wants to search for, say, many rose imagesUser wants to search for, say, many rose images

He submits an existing rose picture as query.He submits an existing rose picture as query.

He submits his own sketch of rose as query.He submits his own sketch of rose as query.  The system will extract image features for this query. The system will extract image features for this query.

It will compare these features with that of other images in aIt will compare these features with that of other images in adatabase.database.

Relevant results will be displayed to the user.Relevant results will be displayed to the user.

May 20, 2012May 20, 2012 1010 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 11: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 11/78

Sample CBIR architectureSample CBIR architecture

May 20, 2012May 20, 2012 1111 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 12: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 12/78

May 20, 2012May 20, 2012 1212 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 13: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 13/78

13

Edge-based Techniques

Edgedetection

Segmentation

 by boundarydetection

Classificationand analysis

May 20, 2012May 20, 2012 1313 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 14: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 14/78

Segmentation Image ProcessingSegmentation Image Processing

In computer vision,In computer vision, SegmentationSegmentation is the process of is the process of partitioning a digital image into multiple segments (sets of partitioning a digital image into multiple segments (sets of pixels, also known as superpixels).pixels, also known as superpixels).

 The goal of segmentation is to simplify and/or change the The goal of segmentation is to simplify and/or change the

representation of an image into something that is morerepresentation of an image into something that is moremeaningful and easier to analyze.meaningful and easier to analyze.

Image segmentation is typically used to locate objects andImage segmentation is typically used to locate objects andboundaries (lines, curves, etc.) in images.boundaries (lines, curves, etc.) in images.

 The result of image segmentation is a set of segments that The result of image segmentation is a set of segments thatcollectively cover the entire image, or a set of contourscollectively cover the entire image, or a set of contoursextracted from the image Each of the pixels in a region areextracted from the image Each of the pixels in a region aresimilar with respect to some characteristic or computedsimilar with respect to some characteristic or computedproperty, such as color, intensity, or texture. Adjacentproperty, such as color, intensity, or texture. Adjacentregions are significantly different with respect to the sameregions are significantly different with respect to the same

characteristic(s).characteristic(s).May 20, 2012May 20, 2012 1414 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 15: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 15/78

Segmentation Image ProcessingSegmentation Image Processing

Method -Method - EdgeEdge detectiondetection

. Edge detection techniques have been used as the base of . Edge detection techniques have been used as the base of another segmentation technique.another segmentation technique.

Region boundaries and edges are closely related, sinceRegion boundaries and edges are closely related, since

there is often a sharp adjustment in intensity at the regionthere is often a sharp adjustment in intensity at the regionboundaries.boundaries.

 The edges identified by edge detection are often The edges identified by edge detection are oftendisconnected. To segment an object from an imagedisconnected. To segment an object from an imagehowever, one needs closed region boundaries. The desiredhowever, one needs closed region boundaries. The desired

edges are the boundaries between such objects.edges are the boundaries between such objects.

Segmentation methods can also be applied to edgesSegmentation methods can also be applied to edgesobtained from edge detectors.obtained from edge detectors.

May 20, 2012May 20, 2012 1515 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 16: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 16/78

Segmentation Image ProcessingSegmentation Image Processing

Method-Method- ClusteringClustering MethodsMethods

Algorithm: An iterative technique that is used to partition anAlgorithm: An iterative technique that is used to partition animage intoimage into K K clusters.clusters.

1.1.  The basic algorithm is: The basic algorithm is:

2.2. PickPick K K cluster centres, either randomly or based on somecluster centres, either randomly or based on someheuristicheuristic

3.3. Assign each pixel in the image to the cluster thatAssign each pixel in the image to the cluster thatminimizes the distance between the pixel and theminimizes the distance between the pixel and thecluster centrecluster centre

4.4. Re-compute the cluster centres by averaging all of theRe-compute the cluster centres by averaging all of thepixels in the clusterpixels in the cluster

5.5. Repeat steps 2 and 3 until convergence is attained (e.g.Repeat steps 2 and 3 until convergence is attained (e.g.no pixels change clusters)no pixels change clusters)

6.6. In this case, distance is the squared or absoluteIn this case, distance is the squared or absolutedifference between a pixel and a cluster center. Thedifference between a pixel and a cluster center. Thedifference is typically based on pixeldifference is typically based on pixel colorcolor, intensity,, intensity,texture, and location, or a weighted combination of texture, and location, or a weighted combination of these factors.these factors. K K can be selected manually, randomly orcan be selected manually, randomly or

by a heuristic.by a heuristic.7.7.  This al orithm is uaranteed to conver e but it ma not

May 20, 2012May 20, 2012 1616 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 17: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 17/78

Page 18: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 18/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods- Split-and-mergeSplit-and-merge methodsmethods

Split-and-merge segmentation is based on a quadtreeSplit-and-merge segmentation is based on a quadtreepartition of an image. It is sometimes called quadtreepartition of an image. It is sometimes called quadtreesegmentation.segmentation.

 This method starts at the root of the tree that represents This method starts at the root of the tree that representsthe whole image. If it is found non-uniform (notthe whole image. If it is found non-uniform (nothomogeneous), then it is split into four son-squares (thehomogeneous), then it is split into four son-squares (thesplitting process), and so on so forth. Conversely, if foursplitting process), and so on so forth. Conversely, if fourson-squares are homogeneous, they can be merged asson-squares are homogeneous, they can be merged asseveral connected components (the merging process). Theseveral connected components (the merging process). The

node in the tree is a segmented node. This processnode in the tree is a segmented node. This processcontinues recursively until no further splits or merges arecontinues recursively until no further splits or merges arepossible. When a special data structure is involved in thepossible. When a special data structure is involved in theimplementation of the algorithm of the method, its timeimplementation of the algorithm of the method, its timecomplexity can reach , an optimal algorithm of the methodcomplexity can reach , an optimal algorithm of the method

May 20, 2012May 20, 2012 1818 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 19: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 19/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods-Graph partitioningGraph partitioning methodsmethods

Graph partitioning methods can effectively be used forGraph partitioning methods can effectively be used forimage segmentation. In these methods, the image isimage segmentation. In these methods, the image ismodelled as a weighted, undirected graph. Usually a pixelmodelled as a weighted, undirected graph. Usually a pixelor a group of pixels are associated with nodes and edgeor a group of pixels are associated with nodes and edge

weights define the (dis)similarity between theweights define the (dis)similarity between theneighbourhood pixels. The graph (image) is thenneighbourhood pixels. The graph (image) is thenpartitioned according to a criterion designed to modelpartitioned according to a criterion designed to model"good" clusters. Each partition of the nodes (pixels) output"good" clusters. Each partition of the nodes (pixels) outputfrom these algorithms are considered an object segment infrom these algorithms are considered an object segment inthe image. Some popular algorithms of this category arethe image. Some popular algorithms of this category are

normalized cuts, random walker minimum cut, isoperimetricnormalized cuts, random walker minimum cut, isoperimetricpartitioning and minimum spanning tree-basedpartitioning and minimum spanning tree-basedsegmentation.segmentation.

May 20, 2012May 20, 2012 1919 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 20: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 20/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods-WatershedWatershed transformationtransformation

 The watershed transformation considers the gradient The watershed transformation considers the gradient

magnitude of an image as a topographic surface. Pixelsmagnitude of an image as a topographic surface. Pixels

having the highest gradient magnitude intensities (GMIs)having the highest gradient magnitude intensities (GMIs)

correspond to watershed lines, which represent the regioncorrespond to watershed lines, which represent the regionboundaries. Water placed on any pixel enclosed by aboundaries. Water placed on any pixel enclosed by a

common watershed line flows downhill to a common localcommon watershed line flows downhill to a common local

intensity minimum (LIM). Pixels draining to a commonintensity minimum (LIM). Pixels draining to a common

minimum form a catch basin, which represents a segment.minimum form a catch basin, which represents a segment.

May 20, 2012May 20, 2012 2020 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 21: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 21/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods-Model basedModel based segmentationsegmentation

 The central assumption of such an approach is that The central assumption of such an approach is thatstructures of interest/organs have a repetitive form of structures of interest/organs have a repetitive form of geometry. Therefore, one can seek for a probabilistic modelgeometry. Therefore, one can seek for a probabilistic modeltowards explaining the variation of the shape of the organtowards explaining the variation of the shape of the organ

and then when segmenting an image impose constraintsand then when segmenting an image impose constraintsusing this model as prior. Such a task involves (i)using this model as prior. Such a task involves (i)registration of the training examples to a common pose, (ii)registration of the training examples to a common pose, (ii)probabilistic representation of the variation of theprobabilistic representation of the variation of theregistered samples, and (iii) statistical inference betweenregistered samples, and (iii) statistical inference betweenthe model and the image. State of the art methods in thethe model and the image. State of the art methods in theliterature for knowledge-based segmentation involve activeliterature for knowledge-based segmentation involve active

shape and appearance models, active contours andshape and appearance models, active contours anddeformable templates and level-set based methods.deformable templates and level-set based methods.

May 20, 2012May 20, 2012 2121 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 22: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 22/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods- Compression-based methodsCompression-based methods Compression based methods postulate that the optimal segmentation is theCompression based methods postulate that the optimal segmentation is the

one that minimizes, over all possible segmentations, the coding length of theone that minimizes, over all possible segmentations, the coding length of thedata. The connection between these two concepts is that segmentation triesdata. The connection between these two concepts is that segmentation triesto find patterns in an image and any regularity in the image can be used toto find patterns in an image and any regularity in the image can be used tocompress it. The method describes each segment by its texture andcompress it. The method describes each segment by its texture andboundary shape. Each of these components is modeled by a probabilityboundary shape. Each of these components is modeled by a probabilitydistribution function and its coding length is computed as follows:distribution function and its coding length is computed as follows:

 The boundary encoding leverages the fact that regions in natural images tend to have a The boundary encoding leverages the fact that regions in natural images tend to have asmooth contour. This prior is used by huffman coding to encode the difference chain code of smooth contour. This prior is used by huffman coding to encode the difference chain code of the contours in an image. Thus, the smoother a boundary is, the shorter coding length itthe contours in an image. Thus, the smoother a boundary is, the shorter coding length itattains.attains.

 Texture is encoded by lossy compression in a way similar to minimum description length Texture is encoded by lossy compression in a way similar to minimum description length(MDL) principle, but here the length of the data given the model is approximated by the(MDL) principle, but here the length of the data given the model is approximated by thenumber of samples times the entropy of the model. The texture in each region is modeled by anumber of samples times the entropy of the model. The texture in each region is modeled by amultivariate normal distribution whose entropy has closed form expression. An interestingmultivariate normal distribution whose entropy has closed form expression. An interestingproperty of this model is that the estimated entropy bounds the true entropy of the data fromproperty of this model is that the estimated entropy bounds the true entropy of the data fromabove. This is because among all distributions with a given mean and covariance, normalabove. This is because among all distributions with a given mean and covariance, normaldistribution has the largest entropy. Thus, the true coding length cannot be more than whatdistribution has the largest entropy. Thus, the true coding length cannot be more than whatthe algorithm tries to minimize.the algorithm tries to minimize.

For any given segmentation of an image, this scheme yields the number of bits required toFor any given segmentation of an image, this scheme yields the number of bits required toencode that image based on the given segmentation. Thus, among all possible segmentationsencode that image based on the given segmentation. Thus, among all possible segmentationsof an image, the goal is to find the segmentation which produces the shortest coding length.of an image, the goal is to find the segmentation which produces the shortest coding length.

 This can be achieved by a simple agglomerative clustering method. The distortion in the lossy This can be achieved by a simple agglomerative clustering method. The distortion in the lossycompression determines the coarseness of the segmentation and its optimal value may differcompression determines the coarseness of the segmentation and its optimal value may differfor each image. This parameter can be estimated heuristically from the contrast of textures infor each image. This parameter can be estimated heuristically from the contrast of textures inan image.an image.

May 20, 2012May 20, 2012 2222 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 23: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 23/78

Segmentation Image Processing MethodsSegmentation Image Processing Methods

-- Region-growing methodsRegion-growing methods

 The first region-growing method was the seeded region growing The first region-growing method was the seeded region growingmethod. This method takes a set of seeds as input along with themethod. This method takes a set of seeds as input along with theimage. The seeds mark each of the objects to be segmented. Theimage. The seeds mark each of the objects to be segmented. Theregions are iteratively grown by comparing all unallocatedregions are iteratively grown by comparing all unallocatedneighbouring pixels to the regions. The difference between a pixel'sneighbouring pixels to the regions. The difference between a pixel'sintensity value and the region's mean, is used as a measure of intensity value and the region's mean, is used as a measure of 

similarity. The pixel with the smallest difference measured this waysimilarity. The pixel with the smallest difference measured this wayis allocated to the respective region. This process continues until allis allocated to the respective region. This process continues until allpixels are allocated to a region.pixels are allocated to a region.

Seeded region growing requires seeds as additional input. TheSeeded region growing requires seeds as additional input. Thesegmentation results are dependent on the choice of seeds. Noisesegmentation results are dependent on the choice of seeds. Noisein the image can cause the seeds to be poorly placed. Unseededin the image can cause the seeds to be poorly placed. Unseededregion growing is a modified algorithm that doesn't require explicitregion growing is a modified algorithm that doesn't require explicit

seeds. It starts off with a single region – the pixel chosen hereseeds. It starts off with a single region – the pixel chosen heredoes not significantly influence final segmentation. At each iterationdoes not significantly influence final segmentation. At each iterationit considers the neighbouring pixels in the same way as seededit considers the neighbouring pixels in the same way as seededregion growing. It differs from seeded region growing in that if theregion growing. It differs from seeded region growing in that if theminimum is less than a predefined threshold then it is added tominimum is less than a predefined threshold then it is added tothe respective region . If not, then the pixel is consideredthe respective region . If not, then the pixel is consideredsignificantly different from all current regions and a new region issignificantly different from all current regions and a new region iscreated with this pixel.created with this pixel.

May 20, 2012May 20, 2012 2323 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 24: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 24/78

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods- Histogram-basedHistogram-based methodsmethods

Histogram-based methods are very efficient when compared to other image segmentationHistogram-based methods are very efficient when compared to other image segmentationmethods because they typically require only one pass through the pixels. In this technique, amethods because they typically require only one pass through the pixels. In this technique, ahistogram is computed from all of the pixels in the image, and the peaks and valleys in thehistogram is computed from all of the pixels in the image, and the peaks and valleys in thehistogram are used to locate the clusters in the image.Color or intensity can be used as thehistogram are used to locate the clusters in the image.Color or intensity can be used as themeasure.measure.

A refinement of this technique is to recursively apply the histogram-seeking method to clustersA refinement of this technique is to recursively apply the histogram-seeking method to clusters

in the image in order to divide them into smaller clusters. This is repeated with smaller andin the image in order to divide them into smaller clusters. This is repeated with smaller andsmaller clusters until no more clusters are formed.smaller clusters until no more clusters are formed. One disadvantage of the histogram-seeking method is that it may be difficult to identifyOne disadvantage of the histogram-seeking method is that it may be difficult to identify

significant peaks and valleys in the image. In this technique of image classification distancesignificant peaks and valleys in the image. In this technique of image classification distancemetric and integrated region matching are familiar.metric and integrated region matching are familiar.

Histogram-based approaches can also be quickly adapted to occur over multiple frames, whileHistogram-based approaches can also be quickly adapted to occur over multiple frames, whilemaintaining their single pass efficiency. The histogram can be done in multiple fashions whenmaintaining their single pass efficiency. The histogram can be done in multiple fashions whenmultiple frames are considered. The same approach that is taken with one frame can be appliedmultiple frames are considered. The same approach that is taken with one frame can be applied

to multiple, and after the results are merged, peaks and valleys that were previously difficult toto multiple, and after the results are merged, peaks and valleys that were previously difficult toidentify are more likely to be distinguishable. The histogram can also be applied on a per pixelidentify are more likely to be distinguishable. The histogram can also be applied on a per pixel basis where the information result are used to determine the most frequent color for the pixel basis where the information result are used to determine the most frequent color for the pixellocation. This approach segments based on active objects and a static environment, resulting inlocation. This approach segments based on active objects and a static environment, resulting ina different type of segmentation useful in Video trackinga different type of segmentation useful in Video tracking

May 20, 2012May 20, 2012 2424 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 25: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 25/78

AnAn image histogramimage histogram is a type of histogram that acts as ais a type of histogram that acts as agraphical representation of the tonal distribution in a digital image.graphical representation of the tonal distribution in a digital image.It plots the number of pixels for each tonal value. By looking at theIt plots the number of pixels for each tonal value. By looking at thehistogram for a specific image a viewer will be able to judge thehistogram for a specific image a viewer will be able to judge theentire tonal distribution at a glance.entire tonal distribution at a glance.

Image histograms are present on many modern digital cameras.Image histograms are present on many modern digital cameras.

Photographers can use them as an aid to show the distribution of Photographers can use them as an aid to show the distribution of tones captured, and whether image detail has been lost to blown-tones captured, and whether image detail has been lost to blown-out highlights or blacked-out shadows.out highlights or blacked-out shadows.

 The horizontal axis of the graph represents the tonal variations, The horizontal axis of the graph represents the tonal variations,while the vertical axis represents the number of pixels in thatwhile the vertical axis represents the number of pixels in thatparticular tone. The left side of the horizontal axis represents theparticular tone. The left side of the horizontal axis represents theblack and dark areas, the middle represents medium grey and theblack and dark areas, the middle represents medium grey and the

right hand side represents light and pure white areas. The verticalright hand side represents light and pure white areas. The verticalaxis represents the size of the area that is captured in each one of axis represents the size of the area that is captured in each one of these zones. Thus, the histogram for a very dark image will havethese zones. Thus, the histogram for a very dark image will havethe majority of its data points on the left side and center of thethe majority of its data points on the left side and center of thegraph. Conversely, the histogram for a very bright image with fewgraph. Conversely, the histogram for a very bright image with fewdark areas and/or shadows will have most of its data points on thedark areas and/or shadows will have most of its data points on theright side and center of the graph.right side and center of the graph.

Segmentation Image ProcessingSegmentation Image Processing

Methods-Methods- Histogram-basedHistogram-based methodsmethods

May 20, 2012May 20, 2012 2525 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 26: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 26/78

Image Histogram contdImage Histogram contd

Image editors typically have provisions to create aImage editors typically have provisions to create ahistogram of the image being edited. The histogram plotshistogram of the image being edited. The histogram plotsthe number of pixels in the image (vertical axis) with athe number of pixels in the image (vertical axis) with aparticular brightness value (horizontal axis). Algorithms inparticular brightness value (horizontal axis). Algorithms inthe digital editor allow the user to visually adjust thethe digital editor allow the user to visually adjust thebrightness value of each pixel and to dynamically displaybrightness value of each pixel and to dynamically display

the results as adjustments are made. Improvements inthe results as adjustments are made. Improvements inpicture brightness and contrast can thus be obtained.picture brightness and contrast can thus be obtained. In the field of computer vision, image histograms can beIn the field of computer vision, image histograms can be

useful tools for thresholding. Because the informationuseful tools for thresholding. Because the informationcontained in the graph is a representation of pixelcontained in the graph is a representation of pixeldistribution as a function of tonal variation, imagedistribution as a function of tonal variation, image

histograms can be analyzed for peaks and/or valleys whichhistograms can be analyzed for peaks and/or valleys whichcan then be used to determine a threshold value. Thiscan then be used to determine a threshold value. Thisthreshold value can then be used for edge detection, imagethreshold value can then be used for edge detection, imagesegmentation, and co-occurrence matrices.segmentation, and co-occurrence matrices.

May 20, 2012May 20, 2012 2626 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 27: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 27/78

Image Histogram contdImage Histogram contd

May 20, 2012May 20, 2012 2727 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 28: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 28/78

Image Histogram contdImage Histogram contd

May 20, 2012May 20, 2012 2828 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 29: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 29/78

Overview of - GoogleOverview of - Google

May 20, 2012May 20, 2012 2929 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 30: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 30/78

Name- Google, because itis a common spelling of googol, or 10100 and

fits well with our goal of building very large-scale search

May 20, 2012May 20, 2012 3030 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 31: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 31/78

1. Google is a prototype of a large-scale search enginewhich makes heavy use of the structure present inhypertext.

2. Google is designed to crawl and index the Webefficiently and produce much more satisfying searchresults than existing systems.

3. Large-scale search engine which addresses many of 

the problems of existing systems. It makesespecially heavy use of the additional structurepresent in hypertext to provide much higher qualitysearch results

May 20, 2012May 20, 2012 3131 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 32: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 32/78

How Google Works

 Google consists of three distinct parts, each of which is run on a

distributed network of thousands of low-cost computers and cantherefore when we enter a query.

1.Carry out fast parallel processing - Parallel processing is a

method of computation in which many calculations can beperformed simultaneously, significantly speeding up dataprocessing.

2.Googlebot- a web crawler that finds and fetches web pages.

 The indexer that sorts every word on every page and stores theresulting index of words in a huge database.

3.The query processor, which compares your search query to theindex and recommends the documents that it considers most

relevant.May 20, 2012May 20, 2012 3232 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 33: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 33/78

3. The search results are returnedtothe user in a fraction of a second.

1. The web server sends the queryto

the index servers. The content insidethe index servers is similar to theindexin the back of a book--it tells whichpages contain the words that matchany

particular query term

2. The query travels to thedocservers, which actually

retrieve thestored documents. Snippetsaregenerated to describe eachsearchresult.

CopyrightMay 20, 2012May 20, 2012 3333 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 34: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 34/78

Crawlingtechnology is needed to gather the web documents and keepthem up to date.Storage space must be used efficiently to store indices and,optionally, the documents themselves.

IndexingThe indexing system must process hundreds of gigabytes of dataefficiently. Queries must be handled quickly, at a rate of hundredsto thousands per second.

Google is designed to scale well to extremely large data sets. It

makes efficient use of storage space to store the index.Its data structures are optimized for fast and efficient accessFurther, we expect that the cost to index and store text or HTMLwill eventually decline relative to the amount that will be available.This will result in favourable scaling properties for centralized

systems like Google.May 20, 2012May 20, 2012 3434 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 35: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 35/78

 The Google search engine has two important features that help itproduce high precision results.

 First it makes use of the link structure of the Web to calculate a

quality ranking for each web page. This rankingis called PageRank.

Second Google utilizes link to improve search results.

May 20, 2012May 20, 2012 3535 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 36: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 36/78

PageRank: Bringing Order to the Web

 The citation (link) graph of the web is an important resourcethat has largely gone unused in existing web search engines. They have created maps containing as many as 518 million of these hyperlinks These maps allow rapid calculation of a webpage’s "PageRank", an objective measure of its citationimportance that corresponds well with people’s subjectiveidea of importance Because of this correspondence,PageRank is an excellent way to prioritize the results of webkeyword searches For most popular subjects, a simple textmatching search that is restricted to web page titles performs

admirably when PageRank prioritizes the results For the typeof full text searches in the main Google system, PageRankalso helps a great deal.

May 20, 2012May 20, 2012 3636 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 37: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 37/78

 Anchor Text 

 The text of links is treated in a special way in our search engine.Most search engines associate the text of a link with the page thatthe link is on. In addition, we associate it with the page the linkpoints to.

•Advantages:•

First, anchors often provide more accurate descriptions of webpages than the pages themselves.

• Second, anchors may exist for documents which cannot beindexed by atext-based search engine, such as images, programs, and

databases. This makes it possible to return web pages which havenot actually been crawled.

Note that pages that have not been crawled can cause problems,since they are never checked for validity before being returned tothe user. In this case, the

search engine can even return a page that never actually existed,but had h erlinks ointin to it. However it is ossible to sort the

May 20, 2012May 20, 2012 3737 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 38: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 38/78

Aside from PageRank and the use of anchor text, Google hasseveral other features.

First- it has location information for all hits and so it makesextensive use of proximity in search.

Second- Google keeps track of some visual presentation detailssuch as font size of words. Words in a larger or bolder font areweighted higher than other words.

 Third- full raw HTML of pages is available in a repository.

May 20, 2012May 20, 2012 3838 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 39: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 39/78

May 20, 2012May 20, 2012 3939 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 40: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 40/78

 The Google Advanced Search is of course applicableto texts, terms, files and so on. In thatway is possible to do an advanced search in textswith following terms:

• Idioms• Format file• Domains• Books

• Codes

May 20, 2012May 20, 2012 4040 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 41: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 41/78

What is a query? It's a request for information

from a search engine. A query consists of oneor more words, numbers, or phrases that youhope to find in the search results listings.

May 20, 2012May 20, 2012 4141 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 42: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 42/78

1. Parse the query2. Convert words into wordIDs3. Seek to the start of the doclist in the short barrel for every

word4. Scan through the doclists until there is a document that

matches all the search terms.5. Compute the rank of that document for the query.6. If we are in the short barrels and at the end of any doclist,

seek to the start of the doclist in the full barrel for every wordand go to step 4.

7. If we are not at the end of any doclist go to step 4. Sort thedocuments that have matched by rank and return the top k.

May 20, 2012May 20, 2012 4242 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 43: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 43/78

Search within results You can get the same results in one step fewer by simply specifying

additional terms to your previous query.On Internet Explorer and on some other browsers, you can double clickon a term to highlight it. Then type a new term or hit theDELETE key to remove the term. Triple click in the search box to highlightyour entire query. Enter a new query or hit the DELETE key toremove the old query.

l Instead of searching for related topics with a single query, divide thequery into several parts. Looking for a job? By searching for tips oneach aspect, you'll find more sites than by searching for sites thatdescribe all the aspects of a job search

May 20, 2012May 20, 2012 4343 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 44: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 44/78

Google Earth is very famous interactive applicationmapping program powered by satellite and aerial imagerythat covers the vast majority of the planet.Google Earth is generally considered to be remarkablyaccurate and extremelydetailed. Many major cities in the planet have such detailedimages that one can zoom in close enough to see vehiclesand pedestrians clearly. Consequently

there have been some concerns about national securityimplications in despite of the images has been not updatedconstantly.Google has many others products through the Google Labsnot released yet due it are still being tested for use by

general public. One good differential on Google Search isregarding to logic engine based on Boolean Logic created bymathematician Britain George Boole. Therefore the Googleengine allows finding words, texts and so on using logicvalues conditioned to:

• The value must be true or false• The value must not be true and false at same timeMay 20, 2012May 20, 2012 4444 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 45: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 45/78

Google Desktop (2) is desktop search software made by Googlefor Mac OS X,Linux, and Microsoft Windows. The program allows text searches

of a user's e-mails, computer files, music, photos, chats, Webpages viewed, and other "Google Gadgets.“

Google Desktop have the following features:

File indexing: After initially installing Google Desktop, the

software completes an indexing of all the files in the computerAnd after the initial indexing is completed, the softwarecontinues to index files as needed. Users can start searching forfiles immediately after installing the program. After performingsearches, results can also be returned in an Internet browser on

the Google Desktop Home Page much like the results for GoogleWeb searches.

May 20, 2012May 20, 2012

4545 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 46: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 46/78

May 20, 2012May 20, 2012

4646

 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 47: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 47/78

• Sidebar : Screenshot of gadgets. Google Desktop running onMicrosoft Windows Vista. Aprominent feature of Google Desktop is the Sidebar, which holds

several common Gadgetsand resides off to one side of the desktop. The Sidebar is available withthe MicrosoftWindows version of Google Desktop only. The Sidebar comes pre-installed with thefollowing gadgets:

Email - a panel which lets one view one's Gmail messages.

 Scratch Pad - here one can store random notes; they are savedautomatically

Photos - displays a slideshow of photos from the "My Pictures" folder .

News - shows the latest headlines from Google News, and how longago they were written. The News panel is personalized depending onthe type of news you read.

 Weather - shows the current weather for a location specified by theMay 20, 2012May 20, 2012

4747

 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 48: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 48/78

Quick Find :

When searching in the sidebar, deskbar or floatingdeskbar, Google Desktop displays a "Quick Find"

window. This window is filled with 6 (by default) of themost relevant results from one's computer. Theseresults update as one types so that one can get towhat one wants on one's computer without having toopen another browser window.

May 20, 2012May 20, 2012

4848

 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 49: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 49/78

Deskbars:

Deskbars are boxes which enable one to type in a searchquery directly from one's desktop. Web results will open in

a browser window and selected computer results will bedisplayed in the "Quick Find" box (see above). A Deskbarcan either be a fixed deskbar, which sits in one's Windows Taskbar, or a Floating Deskbar, which one may positionanywhere one wants on one's desktop.

May 20, 2012May 20, 20124949 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 50: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 50/78

May 20, 2012May 20, 2012 5050 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 51: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 51/78

Overview of - XAMPPOverview of - XAMPP

XAMPP Wh t’ thXAMPP What’s the

Page 52: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 52/78

XAMPP – What’s theXAMPP – What’s the

tool?tool? XAMPPXAMPP (pronounced as ZAMP)(pronounced as ZAMP) is a small and light Apacheis a small and light Apache

distribution containing the most common web developmentdistribution containing the most common web developmenttechnologies in a single package.technologies in a single package.

Acronym for:Acronym for:

X-X- Read as "cross", meaning cross-platform)Read as "cross", meaning cross-platform)

AA-Apache HTTP Server-Apache HTTP ServerMM-MySQL-MySQL

PP-PHP-PHP

PP-Perl-Perl

May 20, 2012May 20, 2012 5252 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 53: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 53/78

Features of XAMPP:Features of XAMPP:

Ideal tool for developing and testing applications in PHP &Ideal tool for developing and testing applications in PHP &MySQL.MySQL.

 Takes less time than installing each of its components Takes less time than installing each of its componentsseparately.separately.

Multiple instances of XAMPP can exist on a single computer.Multiple instances of XAMPP can exist on a single computer. Allow website designers and programmers to test their workAllow website designers and programmers to test their work

on their own computers without any access to the Interneton their own computers without any access to the Internet XAMPP also provides support for creating and manipulatingXAMPP also provides support for creating and manipulating

databases indatabases in MySQLMySQL andand SQLiteSQLite among others.among others.

May 20, 2012May 20, 2012 5353 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 54: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 54/78

May 20, 2012May 20, 2012 5454 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 55: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 55/78

XAMPP v/s XAMPP LiteXAMPP v/s XAMPP Lite

May 20, 2012May 20, 2012 5555 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 56: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 56/78

DemoDemo::

Create a Simple Database using ‘phpMyAdmin’.Create a Simple Database using ‘phpMyAdmin’.

PHP program that connects to a database and retrievesPHP program that connects to a database and retrieves

data.data.

May 20, 2012May 20, 2012 5656 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

A d id C ti t M SQLA d id C ti t M SQL

Page 57: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 57/78

Android:Connecting to MySQLAndroid:Connecting to MySQL

using PHP in XAMPPusing PHP in XAMPP

May 20, 2012May 20, 2012 5757 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 58: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 58/78

Overview of -Overview of -

DrupalDrupal

May 20, 2012May 20, 2012 5858 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 59: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 59/78

What is Drupal?What is Drupal?

Open Source software written in php.Open Source software written in php.

A CMS or content-managementA CMS or content-management

system.system.

A sophisticated web applicationA sophisticated web application

building tool.building tool.May 20, 2012May 20, 2012 5959 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 60: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 60/78

WhatWhat is a CMS?is a CMS?

Simply put, a CMS is a website youSimply put, a CMS is a website you

build using the website itself.build using the website itself.

Wikipedia definition: AWikipedia definition: A content managementcontent management

systemsystem ((CMSCMS) such as a) such as a

document management systemdocument management system (DMS) is a(DMS) is a

computer application used to managecomputer application used to manage work flowwork flow 

needed to collaboratively create, edit, review,needed to collaboratively create, edit, review,index, search, publish and archive various kinds of index, search, publish and archive various kinds of 

digital media and electronic textdigital media and electronic text..[1][1]

May 20, 2012May 20, 2012 6060 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 61: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 61/78

What can Drupal be?What can Drupal be?

blogblog ForumForum Online newspaper, Portal / DirectoryOnline newspaper, Portal / Directory Brocure site, portfolio, flickr like photo dropBrocure site, portfolio, flickr like photo drop Social community site, job post boardSocial community site, job post board Video site like youtubeVideo site like youtube Project management siteProject management site CRM, ERP, SCM, WikiCRM, ERP, SCM, Wiki Shopping cart systemShopping cart system

E-learning, training siteE-learning, training site Dating siteDating site Anything you can think of…Anything you can think of…

May 20, 2012May 20, 2012 6161 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 62: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 62/78

Why use a CMS?Why use a CMS?

It helps manage complexity.It helps manage complexity.

It provides a user interface (UI) forIt provides a user interface (UI) for

adding, editing and publishingadding, editing and publishing

content.content.

It provides a means for collaborationIt provides a means for collaboration

among many to perform the aboveamong many to perform the above

tasks.tasks.May 20, 2012May 20, 2012 6262 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Why use Drupal overWhy use Drupal over

Page 63: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 63/78

Why use Drupal overWhy use Drupal over

Wordpress?Wordpress? Wordpress was designed only to be a blog with some easy add-ons.Wordpress was designed only to be a blog with some easy add-ons.

Drupal was designed to be more of a generalist: it’s for makingDrupal was designed to be more of a generalist: it’s for making‘anything’ and is far more robust.‘anything’ and is far more robust.

Wordpress could be the better choice for blogs since it is better atWordpress could be the better choice for blogs since it is better atbeing a blog than Drupal. This is something of debate.being a blog than Drupal. This is something of debate.

Wordpress is still a sound choice of CMS for SEO and security; soWordpress is still a sound choice of CMS for SEO and security; so if if wordpress satisfies a simpler project’s requirements then by all meanswordpress satisfies a simpler project’s requirements then by all meansuse it use it - it is easier and faster to set up than Drupal.- it is easier and faster to set up than Drupal.

Wordpress is not designed to be highly scalable to many simultaneousWordpress is not designed to be highly scalable to many simultaneous

users, nor does it have flexible roles, permissions, extensible contentusers, nor does it have flexible roles, permissions, extensible contenttypes, nor does it have plentiful well-tested, quality add-ons. It has atypes, nor does it have plentiful well-tested, quality add-ons. It has afew and a lot of really poor plugins.few and a lot of really poor plugins.

Caveat: Trying to force Wordpress to do something it cannot do easilyCaveat: Trying to force Wordpress to do something it cannot do easilywith very popular plug-ins can be worse than suffering the learningwith very popular plug-ins can be worse than suffering the learningcurve of Drupal.curve of Drupal.

May 20, 2012May 20, 2012 6363 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 64: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 64/78

Downsides to the DruupDownsides to the Druup

Drupal has a steeper learning curve thanDrupal has a steeper learning curve thanwordpress or Joomla.wordpress or Joomla.

Drupal and it’s developers make noDrupal and it’s developers make noexcuse for this fact- it is a robust,excuse for this fact- it is a robust,flexible toolflexible tool

 That said, the drupal community is That said, the drupal community isconstantly addressing usability and user-constantly addressing usability and user-experience issues because they wantexperience issues because they want

the industry market share.the industry market share.May 20, 2012May 20, 2012 6464 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 65: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 65/78

What is a UI?What is a UI?

UI is a user-interface, which is aUI is a user-interface, which is a

general term for the layout of general term for the layout of 

options, widgets and settings used tooptions, widgets and settings used to

configure the system or manageconfigure the system or managecontent.content.

‘‘Site-building’ activities refer toSite-building’ activities refer toconfiguring settings or managingconfiguring settings or managing

content through the UI, such ascontent through the UI, such as

building navigation menus.building navigation menus.May 20, 2012May 20, 2012 6565 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 66: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 66/78

Drupal StructureDrupal Structure

Drupal is a database-drivenDrupal is a database-driven

(‘dynamic’) application. It requires a(‘dynamic’) application. It requires a

database.database.

Drupal has a core filesystem whoseDrupal has a core filesystem whose

functionality can be extended usingfunctionality can be extended using

the UI itself, modules and themes.the UI itself, modules and themes.

 The UI settings are stored in the The UI settings are stored in the

database.May 20, 2012May 20, 2012 6666 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 67: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 67/78

Drupal StructureDrupal Structure

May 20, 2012May 20, 2012 6767 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 68: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 68/78

ModulesModules

Packages of files in a directory that youPackages of files in a directory that youupload into drupal’s module spaceupload into drupal’s module space(/sites/all/modules)(/sites/all/modules)

Add functionality to drupalAdd functionality to drupal

‘‘Core’ Modules come shipped withCore’ Modules come shipped withdrupaldrupal

‘‘Contributed’ Modules are downloadsContributed’ Modules are downloads

from drupal.orgfrom drupal.orgMay 20, 2012May 20, 2012 6868 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 69: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 69/78

ThemesThemes

Packages of files in a directory thatPackages of files in a directory that

you upload into drupal’s themeyou upload into drupal’s theme

space (/sites/all/themes)space (/sites/all/themes)

 Themes adjust the site layout and Themes adjust the site layout and

style. Like ‘skinning’ your mediastyle. Like ‘skinning’ your media

player.player.

 Themes can be easily changed in the Themes can be easily changed in the

UI.May 20, 2012May 20, 2012 6969 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 70: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 70/78

Drupal DatabaseDrupal Database

Drupal’s database tracks things like :Drupal’s database tracks things like :

Site and Module settings,Site and Module settings,

User’s information,User’s information, Access information,Access information, Logging information,Logging information, Permissions and User Roles,Permissions and User Roles, System PathsSystem Paths Content and content metadataContent and content metadata

May 20, 2012May 20, 2012 7070 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 71: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 71/78

Layout and RegionsLayout and Regions

A Region is an area in a layout, such as aA Region is an area in a layout, such as aheader, footer, content, left/right sidebar intoheader, footer, content, left/right sidebar intowhich blocks can be placed and arranged.which blocks can be placed and arranged.

A block is a box containing some informationA block is a box containing some information

A node resides only in the content area of A node resides only in the content area of the layout (except in special circumstances).the layout (except in special circumstances).

 Think of the content region as a big ‘node’ Think of the content region as a big ‘node’block that allows other blocks in it but theblock that allows other blocks in it but thenode itself can’t move.node itself can’t move.

May 20, 2012May 20, 2012 7171 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 72: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 72/78

BlocksBlocks

Blocks are added by modules.Blocks are added by modules.

Blocks can contain views, widgets,Blocks can contain views, widgets,

menus, nodes (in specialmenus, nodes (in specialcircumstances), and panels.circumstances), and panels.

Blocks can be moved around throughBlocks can be moved around throughthe UIthe UI

Blocks can be styled individually.Blocks can be styled individually.May 20, 2012May 20, 2012 7272 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 73: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 73/78

Admin MenuAdmin Menu

 The administrative menu is a part of  The administrative menu is a part of 

the UI that allows one to configurethe UI that allows one to configure

Drupal’s settings.Drupal’s settings.

 The settings available depend on The settings available depend on

which modules are installed andwhich modules are installed and

enabled.enabled.

Permissions allow users to havePermissions allow users to have

‘ ’‘administrative’ access to moduleMay 20, 2012May 20, 2012 7373 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 74: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 74/78

UsersUsers

All CMSes (wordpress, Joomla,All CMSes (wordpress, Joomla,

Drupal) have a user login system;Drupal) have a user login system;

users have a username/pw.users have a username/pw.

Drupal also supports the concepts of Drupal also supports the concepts of 

1) Roles and 2) Permissions.1) Roles and 2) Permissions.

Roles are user designations to groupsRoles are user designations to groups

having the same set of permissions.having the same set of permissions.May 20, 2012May 20, 2012 7474 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 75: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 75/78

Anonymous UserAnonymous User

A (not-logged-in) site visitor is calledA (not-logged-in) site visitor is called

a ‘guest’, ‘visitor’ or ‘anonymousa ‘guest’, ‘visitor’ or ‘anonymous

user’.user’.

Has a user-id (uid) of 0 (zero).Has a user-id (uid) of 0 (zero).

All anonymous users belong to theAll anonymous users belong to the

‘anonymous user role’ (a role ID of 1)‘anonymous user role’ (a role ID of 1)

and have a set of permissionsand have a set of permissions

assi ned to them.May 20, 2012May 20, 2012 7575 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 76: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 76/78

Authenticated UserAuthenticated User

A user in drupal may belong to oneA user in drupal may belong to oneor more roles.or more roles.

Every registered user in DrupalEvery registered user in Drupalbelongs to at least the ‘authenticatedbelongs to at least the ‘authenticated

user’ role.user’ role.

Authenticated user role has a role IDAuthenticated user role has a role ID

of 2of 2May 20, 2012May 20, 2012 7676 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 77: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 77/78

Root ‘Admin’ UserRoot ‘Admin’ User

 The ‘root’ user or ‘root admin’ has The ‘root’ user or ‘root admin’ hasthe ability to do anything on the sitethe ability to do anything on the site

and is a special user.and is a special user.

 The ‘root’ user has a user-id (uid) of  The ‘root’ user has a user-id (uid) of 

1.1.

 The ‘root’ user does NOT have role- The ‘root’ user does NOT have role-

permissions to set because they arepermissions to set because they are

effectivel ods within Dru al.May 20, 2012May 20, 2012 7777 Jamia Hamdard, New Delhi Jamia Hamdard, New Delhi

Page 78: Amit Presentation Finalv1.1

7/31/2019 Amit Presentation Finalv1.1

http://slidepdf.com/reader/full/amit-presentation-finalv11 78/78

ThanksThanks