After an image has been segmented into regions ; the resulting pixels is usually is represented and described in suitable form for further computer processing.
This presentation describes briefly about the image enhancement in spatial domain, basic gray level transformation, histogram processing, enhancement using arithmetic/ logical operation, basics of spatial filtering and local enhancements.
Chain code is a lossless compression technique that represents the coordinates of a continuous object boundary in an image as a string of numbers. Each number represents the direction of the next point along the connected line segment. Chain codes work best for binary images, representing them as a connected sequence of straight line segments based on 4 or 8-connectivity. The chain code provides a concise representation of a shape contour by describing each edge as a sequence of direction codes from its starting point.
Thresholding is a technique for image segmentation where each pixel is classified as either foreground or background based on a threshold value. It can be used for images with light objects and a dark background by selecting a threshold that separates the intensities. More generally, multilevel thresholding can classify pixels into object classes or background based on multiple threshold values. Thresholding views segmentation as a test against a threshold function of pixel location and intensity. Global thresholding uses a single threshold across the image while adaptive thresholding uses local thresholds.
This document discusses different types of error free compression techniques including variable-length coding, Huffman coding, and arithmetic coding. It then describes lossy compression techniques such as lossy predictive coding, delta modulation, and transform coding. Lossy compression allows for increased compression by compromising accuracy through the use of quantization. Transform coding performs four steps: decomposition, transformation, quantization, and coding to compress image data.
This document discusses color image processing and provides details on color fundamentals, color models, and pseudocolor image processing techniques. It introduces color image processing, full-color versus pseudocolor processing, and several color models including RGB, CMY, and HSI. Pseudocolor processing techniques of intensity slicing and gray level to color transformation are explained, where grayscale values in an image are assigned colors based on intensity ranges or grayscale levels.
This document provides an overview of mathematical morphology and its applications to image processing. Some key points:
- Mathematical morphology uses concepts from set theory and uses structuring elements to probe and extract image properties. It provides tools for tasks like noise removal, thinning, and shape analysis.
- Basic operations include erosion, dilation, opening, and closing. Erosion shrinks objects while dilation expands them. Opening and closing combine these to smooth contours or fill gaps.
- Hit-or-miss transforms allow detecting specific shapes. Skeletonization reduces objects to 1-pixel wide representations.
- Morphological operations can be applied to binary or grayscale images. Structuring elements are used to specify the neighborhood of pixels
1. The document discusses the key elements of digital image processing including image acquisition, enhancement, restoration, segmentation, representation and description, recognition, and knowledge bases.
2. It also covers fundamentals of human visual perception such as the anatomy of the eye, image formation, brightness adaptation, color fundamentals, and color models like RGB and HSI.
3. The principles of video cameras are explained including the construction and working of the vidicon camera tube.
The document discusses various techniques for image compression. It describes how image compression aims to reduce redundant data in images to decrease file size for storage and transmission. It discusses different types of redundancy like coding, inter-pixel, and psychovisual redundancy that compression algorithms target. Common compression techniques described include transform coding, predictive coding, Huffman coding, and Lempel-Ziv-Welch (LZW) coding. Key aspects like compression ratio, mean bit rate, objective and subjective quality metrics are also covered.
This document discusses region-based image segmentation techniques. It introduces region growing, which groups similar pixels into larger regions starting from seed points. Region splitting and merging are also covered, where splitting starts with the whole image as one region and splits non-homogeneous regions, while merging combines similar adjacent regions. The advantages of these methods are that they can correctly separate regions with the same properties and provide clear edge segmentation, while the disadvantages include being computationally expensive and sensitive to noise.
This document summarizes digital image processing techniques including algebraic approaches to image restoration and inverse filtering. It discusses:
1) Unconstrained and constrained restoration, with unconstrained having no knowledge of noise and constrained using knowledge of noise.
2) Inverse filtering which is a direct method that minimizes error between degraded and original images using matrix operations, but can be unstable due to noise or near-zero filter values.
3) Pseudo-inverse filtering which adds a threshold to the inverse filter to avoid instability, working better for noisy images by not amplifying high frequency noise.
This document discusses morphological operations in image processing. It describes how morphological operations like erosion, dilation, opening, and closing can be used to extract shapes and boundaries from binary and grayscale images. Erosion shrinks foreground regions while dilation expands them. Opening performs erosion followed by dilation to remove noise, and closing does the opposite to join broken parts. The hit-and-miss transform is also introduced to detect patterns in binary images using a structuring element containing foreground and background pixels. Examples are provided to illustrate each morphological operation.
This document provides an introduction to image segmentation. It discusses how image segmentation partitions an image into meaningful regions based on measurements like greyscale, color, texture, depth, or motion. Segmentation is often an initial step in image understanding and has applications in identifying objects, guiding robots, and video compression. The document describes thresholding and clustering as two common segmentation techniques and provides examples of segmentation based on greyscale, texture, motion, depth, and optical flow. It also discusses region-growing, edge-based, and active contour model approaches to segmentation.
This document discusses digital image compression. It notes that compression is needed due to the huge amounts of digital data. The goals of compression are to reduce data size by removing redundant data and transforming the data prior to storage and transmission. Compression can be lossy or lossless. There are three main types of redundancy in digital images - coding, interpixel, and psychovisual - that compression aims to reduce. Channel encoding can also be used to add controlled redundancy to protect the source encoded data when transmitted over noisy channels. Common compression methods exploit these different types of redundancies.
This document discusses image segmentation techniques, specifically linking edge points through local and global processing. Local processing involves linking edge-detected pixels that are similar in gradient strength and direction within a neighborhood. Global processing uses the Hough transform to link edge points into lines by mapping points in the image space to the parameter space of slope-intercept or polar coordinates. Thresholding in parameter space identifies coherent lines composed of edge points. The Hough transform allows finding lines even if there are gaps or other defects in detected edge points.
Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram processing
Using histogram statistics for image enhancement
Uses for Histogram Processing
Histogram Equalization
Histogram Matching
Local Histogram Processing
Basics of Spatial Filtering
This document presents a new model for simultaneous sharpening and smoothing of color images based on graph theory. The model represents each pixel as a node in a weighted graph based on its color similarity to neighboring pixels. Smoothing is applied to pixels within the same connected component as the central pixel, while sharpening is applied to pixels in different components. Experimental results show the method can enhance details while removing noise. Future work includes optimizing parameters, measuring performance, and combining sharpening and smoothing parameters.
Digital Image Processing denotes the process of digital images with the use of digital computer. Digital images are contains various types of noises which are reduces the quality of images. Noises can be removed by various enhancement techniques. Image smoothing is a key technology of image enhancement, which can remove noise in images.
This document discusses various point processing and gray level transformation techniques used in image enhancement. It describes point processing as operating directly on pixel intensity values individually to alter them using transformation functions. The document outlines several basic gray level transformations including linear, logarithmic and power law. It also discusses piecewise linear transformations such as contrast stretching, intensity level slicing, and bit plane slicing. These transformations are used to enhance images by modifying their brightness, contrast and emphasis on certain gray levels.
The HSI (hue, saturation, intensity) color model represents color in a way that is more perceptually relevant to humans compared to the RGB (red, green, blue) model. Hue represents the color (such as red, yellow, blue), saturation represents the amount of gray, and intensity represents the brightness. The HSI model separates intensity from color information. Converting an image to HSI allows color manipulations like changing hue or saturation before converting back to RGB for display.
The document discusses various techniques for representing and describing image regions after segmentation. It describes choosing external or internal representation based on focusing on shape or region properties. Common representation techniques include chain codes, polygonal approximations, signatures, boundary segments, and skeletons. Descriptors are then used to represent regions in a compact, invariant form for further processing and analysis.
The document discusses different methods for representing segmented image regions, including:
1) Representing regions based on their external (boundary-based) characteristics or internal (pixel-based) characteristics.
2) Common boundary representation methods are boundary following algorithms, chain codes, and polygon approximation.
3) Chain codes represent boundaries as sequences of line segments coded by direction. Polygon approximation finds the minimum perimeter polygon to capture a boundary shape using the fewest line segments.
Two Dimensional Shape and Texture Quantification - Medical Image ProcessingChamod Mune
1. The document discusses various methods for quantifying two-dimensional shapes and textures in medical images, including statistical moments, spatial moments, radial distance measures, chain codes, Fourier descriptors, thinning, and texture measures.
2. Compactness, calculated using perimeter and area, quantifies how close a shape is to a circle. Spatial moments provide quantitative measurements of point distributions and shapes. Radial distance measures analyze boundary curvature. Chain codes represent boundary points.
3. Fourier descriptors and thinning/skeletonization reduce shapes to descriptors and graphs for analysis. Texture is quantified using statistical moments, co-occurrence matrices, spectral measures, and fractal dimensions.
This document discusses various techniques for representing and describing images for image processing and segmentation. It covers chain codes, polygonal approximations using minimum perimeter polygons and merging/splitting techniques, signatures which provide a 1D functional representation of boundaries, boundary segments to extract information from concave parts of objects, and skeletons which reduce regions to graphs by obtaining medial axis transformations. It also provides examples of thinning algorithms used to obtain skeletons by iteratively deleting contour points while ensuring the overall shape is preserved.
This document proposes a new method for corner detection in images using difference chain coding as a measure of curvature. The method involves extracting a one-pixel thick boundary from the image, chain encoding it to determine slope, smoothing the boundary to remove noise, and calculating difference codes to determine points of high curvature change, which indicate corners. Preliminary results show the method is simple, efficient, and performs comparably to standard corner detection techniques like Harris and Yung.
MDCT audio coding with pulse vector quantizersEricsson
This paper describes a novel audio coding algorithm that is a building block in the recently standardized 3GPP EVS codec. The presented scheme operates in the Modified Discrete Cosine Transform (MDCT) domain and deploys a Split-PVQ pulse coding quantizer, a noise-fill, and a gain control optimized for the quantizer’s properties. A complexity analysis in terms of WMOPS is presented to illustrate that the proposed Split-PVQ concept and dynamic range optimized MPVQ-indexing are suitable for real-time audio coding.
This document discusses different types of interconnection network topologies for parallel machines. It provides details on:
1) Linear array networks have nodes connected in a line, with diameter of n-1, node degree of 2, and bisection width of 1.
2) Mesh networks connect nodes in a grid, with diameter of 2(n-1), node degree of 4, and bisection width of n for an nXn mesh.
3) Hypercube networks have nodes connected by log2N routing functions, with diameter and node degree of log2N and bisection width of 2n-1 for a network with N nodes.
IJRET : International Journal of Research in Engineering and Technology is an international peer reviewed, online journal published by eSAT Publishing House for the enhancement of research in various disciplines of Engineering and Technology. The aim and scope of the journal is to provide an academic medium and an important reference for the advancement and dissemination of research results that support high-level learning, teaching and research in the fields of Engineering and Technology. We bring together Scientists, Academician, Field Engineers, Scholars and Students of related fields of Engineering and Technology
Report AdvancedCodingFinal - Pietro SantoroPietro Santoro
The document provides a summary of a student's laboratory sessions on advanced wireless communications. It includes:
1) Implementation of a C++ class for a sliding window soft-input soft-output decoder with binary log-likelihood ratios as input and output.
2) Simulation of a binary convolutional coded system using the SISO decoder, 2-PAM modulation over an AWGN channel. Bit error rates are computed at the input and output of the SISO decoder.
3) Comments on the SISO decoder class and simulation results for convolutional codes with rates of 1/2, 1/4, and 1/8, reporting the four bit error rates versus Eb/N0.
Design and Performance Analysis of Convolutional Encoder and Viterbi Decoder ...IJERA Editor
In digital communication forward error correction methods have a great practical importance when channel is
noisy. Convolutional error correction code can correct both type of errors random and burst. Convolution
encoding has been used in digital communication systems including deep space communication and wireless
communication. The error correction capability of convolutional code depends on code rate and constraint
length. The low code rate and high constraint length has more error correction capabilities but that also
introduce large overhead. This paper introduces convolutional encoders for various constraint lengths. By
increasing the constraint length the error correction capability can be increased. The performance and error
correction also depends on the selection of generator polynomial. This paper also introduces a good generator
polynomial which has high performance and error correction capabilities.
This document discusses different techniques for image segmentation, which is the process of partitioning an image into meaningful regions or objects. It covers several main methods of region segmentation, including region growing, clustering, and split-and-merge. It also discusses techniques for finding line and curve segments in an image, such as using the Hough transform or edge tracking procedures. Finally, it provides examples of applying these segmentation techniques to extract regions, straight lines, and circles from images.
International Journal of Engineering Research and Applications (IJERA) is an open access online peer reviewed international journal that publishes research and review articles in the fields of Computer Science, Neural Networks, Electrical Engineering, Software Engineering, Information Technology, Mechanical Engineering, Chemical Engineering, Plastic Engineering, Food Technology, Textile Engineering, Nano Technology & science, Power Electronics, Electronics & Communication Engineering, Computational mathematics, Image processing, Civil Engineering, Structural Engineering, Environmental Engineering, VLSI Testing & Low Power VLSI Design etc.
The document discusses image segmentation techniques including thresholding. Thresholding divides an image into foreground and background regions based on pixel intensity values. Global thresholding uses a single threshold value for the entire image, while adaptive or local thresholding uses variable thresholds that change across the image. Multilevel thresholding can extract objects within a specific intensity range using multiple threshold values. The Hough transform is also presented as a way to connect disjointed edge points and detect shapes like lines in an image.
Performance bounds for unequally punctured terminated convolutional codeseSAT Journals
Abstract
The main objective of this paper is to discuss about the performance of the punctured convolution codes. Generally the punctured
convolution codes are designed for a protection purpose in CDMA.In this paper a systematic method to construct performance upper
bound for a punctured convolution code with an arbitrary pattern is proposed. At the decoder side perfect channel estimation is
assumed and to represent the relation between input information bits and their corresponding Hamming weight outputs a weight
enumerator is defined. Finally the simulations results provided very well agree with their predicted results with the upper bounds.
Keywords:Convolution code, upper bound, weight enumerator, rate matching.
This document summarizes a computer vision project that aims to allow a camera fixed to a drone to determine its position relative to a pipe. The method uses images of a pipe covered in a known pattern to extract the camera's orientation. Key steps include binarizing images, detecting pattern dots, calculating 3D coordinates, and using EPnP to retrieve the camera pose from 2D-3D correspondences. The project achieves accurate pose estimation but has limitations such as not distinguishing pattern orientation. Future work could involve a modified pattern to address these limitations.
Image segmentation is a computer vision task that involves dividing an image into multiple segments or regions, where each segment corresponds to a distinct object, region, or feature within the image. The goal of image segmentation is to simplify and analyze an image by partitioning it into meaningful and semantically relevant parts. This is a crucial step in various applications, including object recognition, medical imaging, autonomous driving, and more.
Key points about image segmentation:
Semantic Segmentation: This type of segmentation assigns each pixel in an image to a specific class, essentially labeling each pixel with the object or region it belongs to. It's commonly used for object detection and scene understanding.
Instance Segmentation: Here, individual instances of objects are separated and labeled separately. This is especially useful when multiple objects of the same class are present in the image.
Boundary Detection: Some segmentation methods focus on identifying the boundaries that separate different objects or regions in an image.
Methods: Image segmentation can be achieved through various techniques, including traditional methods like thresholding, clustering, and region growing, as well as more advanced techniques involving deep learning, such as using convolutional neural networks (CNNs) and fully convolutional networks (FCNs).
Challenges: Image segmentation can be challenging due to variations in lighting, color, texture, and object shape. Overlapping objects and unclear boundaries further complicate the task.
Applications: Image segmentation is used in diverse fields. For example, in medical imaging, it helps identify organs or abnormalities. In autonomous vehicles, it aids in identifying pedestrians, other vehicles, and obstacles.
Evaluation: Measuring the accuracy of segmentation methods can be complex. Metrics like Intersection over Union (IoU) and Dice coefficient are often used to compare segmented results to ground truth.
Data Annotation: Creating ground truth annotations for segmentation can be labor-intensive, as each pixel must be labeled. This has led to the development of datasets and tools to facilitate annotation.
Semantic Segmentation Networks: Deep learning architectures like U-Net, Mask R-CNN, and Deeplab have significantly improved the accuracy of image segmentation by effectively learning complex patterns and features.
Image segmentation plays a fundamental role in understanding and processing images, enabling computers to "see" and interpret visual information in ways that mimic human perception.
Image segmentation is a computer vision task that involves dividing an image into meaningful and distinct segments or regions. The goal is to partition an image into segments that represent different objects or areas of interest within the image. Image segmentation plays a crucial role in various applications, such as object detection, medical imaging, autonomous vehicles, and more.
Image segmentation involves partitioning an image into regions, linear structures, or shapes. There are several main methods of region segmentation including region growing, clustering, and split and merge. Region growing starts with seed pixels and grows regions by adding similar neighboring pixels. Clustering groups pixels into clusters to minimize differences within clusters. Common clustering algorithms include K-means, ISODATA, and histogram-based clustering. Edge detection finds boundaries between regions by looking for changes in intensity values. Popular edge detectors include Sobel, Canny, and zero-crossing operators. Line and curve segments can be found from edge images using tracking or the Hough transform, which accumulates votes for parameter values of lines and curves in an image.
Image segmentation involves partitioning an image into regions, linear structures (line segments, curve segments), or 2D shapes (circles, ellipses). Common region segmentation methods include region growing, clustering, and split-merge. Region growing starts with seed pixels and grows regions based on similarity. Clustering groups pixels into clusters to minimize dissimilarity within clusters. The Hough transform detects lines or curves by accumulating votes in a parameter space based on edge pixels.
This document models indoor wireless signal propagation using log-normal shadowing. It collected over 100 RSS measurements in different locations and distances from an access point transmitting at 2.4GHz and 5GHz. It analyzed the data to determine the path loss exponent n and standard deviation σ for each band. For 2.4GHz, n=2.31 and σ=6.42, accurately predicting signal levels within 30 meters of the access point. For 5GHz, n=2.55 and σ=7.58, accurately predicting signal levels within the test areas. The model provides a simple yet reasonably accurate way to predict indoor wireless coverage.
Decoding of the extended Golay code by the simplified successive-cancellation...TELKOMNIKA JOURNAL
This paper describes an adaptation of a polar code decoding technique in favor of the extended Golay code. Based on the bridge provided by a permutation matrix between the code words of these two classes of codes, the Golay code can be decoded by any polar code technique. Contrary to the successive-cancellation list technique which is characterized by a serial estimation of the bits, we propose in this work an adaptation of the simplified successive-cancellation list technique to polar codes equivalent to the Golay code. The simulations have achieved the performance of a maximum likelihood decoding, with the low decoding complexity of polar codes, compared to one of the universal decoders of linear codes most known in the literature.
Similar to Image Representation & Descriptors (20)
The Control of Relative Humidity & Moisture Content in The AirAshraf Ismail
To many of us Relative Humidity (RH%) & Moisture Content (g/ kg) are confusing terms & we often don't know which one of them to choose in order to highlight our "Humidity" issues!
This post is to briefly address the definition of Relative Humidity, Moisture Content , Moisture Load Sources & Humidity Control Hazard!
FINE-TUNING OF SMALL/MEDIUM LLMS FOR BUSINESS QA ON STRUCTURED DATAkevig
Enabling business users to directly query their data sources is a significant advantage for organisations.
The majority of enterprise data is housed within databases, requiring extensive procedures that involve
intermediary layers for reporting and its related customization. The concept of enabling natural language
queries, where a chatbot can interpret user questions into database queries and promptly return results,
holds promise for expediting decision-making and enhancing business responsiveness. This approach
empowers experienced users to swiftly obtain data-driven insights. The integration of Text-to-SQL and
Large Language Model (LLM) capabilities represents a solution to this challenge, offering businesses a
powerful tool for query automation. However, security concerns prevent organizations from granting direct
database access akin to platforms like OpenAI. To address this limitation, this Paper proposes developing
fine-tuned small/medium LLMs tailored to specific domains like retail and supply chain.These models
would be trained on domain-specific questions and Queries that answer these questions based on the
database table structures to ensure efficacy and security. A pilot study is undertaken to bridge this gap by
fine-tuning selected LLMs to handle business-related queries and associated database structures, focusing
on sales and supply chain domains. The research endeavours to experiment with zero-shot and fine-tuning
techniques to identify the optimal model. Notably, a new dataset is curated for fine-tuning, comprising
business-specific questions pertinent to the sales and supply chain sectors. This experimental framework
aims to evaluate the readiness of LLMs to meet the demands for business query automation within these
specific domains. The study contributes to the progression of natural language query processing and
database interaction within the realm of business intelligence applications.
Top EPC companies in India - Best EPC ContractorMangeshK6
These firms are responsible for designing, procuring materials, and constructing facilities, ensuring timely delivery, and adherence to quality standards.
Here is a list of key players driving the country’s development and shaping the future of Indian infrastructure:
https://industryupdates.medium.com/top-epc-companies-in-india-f814df73c5e8
Security Attacks and Solutions in Vehicular Ad Hoc Networks: A Surveypijans
Vehicular Ad hoc Networks (VANETs) have emerged recently as one of the most attractive topics for researchers and automotive industries due to their tremendous potential to improve traffic safety, efficiency and other added services. However, VANETs are themselves vulnerable against attacks that can directly lead to the corruption of networks and then possibly provoke big losses of time, money, and even lives. This paper presents a survey of VANETs attacks and solutions in carefully considering other similar works as well as updating new attacks and categorizing them into different classes.
Slides from my talk at MinneAnalytics 2024 - June 7, 2024
https://datatech2024.sched.com/event/1eO0m/time-state-analytics-a-new-paradigm
Across many domains, we see a growing need for complex analytics to track precise metrics at Internet scale to detect issues, identify mitigations, and analyze patterns. Think about delays in airlines (Logistics), food delivery tracking (Apps), detect fraudulent transactions (Fintech), flagging computers for intrusion (Cybersecurity), device health (IoT), and many more.
For instance, at Conviva, our customers want to analyze the buffering that users on some types of devices suffer, when using a specific CDN.
We refer to such problems as Multidimensional Time-State Analytics. Time-State here refers to the stateful context-sensitive analysis over event streams needed to capture metrics of interest, in contrast to simple aggregations. Multidimensional refers to the need to run ad hoc queries to drill down into subpopulations of interest. Furthermore, we need both real-time streaming and offline retrospective analysis capabilities.
In this talk, we will share our experiences to explain why state-of-art systems offer poor abstractions to tackle such workloads and why they suffer from poor cost-performance tradeoffs and significant complexity.
We will also describe Conviva’s architectural and algorithmic efforts to tackle these challenges. We present early evidence on how raising the level of abstraction can reduce developer effort, bugs, and cloud costs by (up to) an order of magnitude, and offer a unified framework to support both streaming and retrospective analysis. We will also discuss how our ideas can be plugged into existing pipelines and how our new ``visual'' abstraction can democratize analytics across many domains and to non-programmers.
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptxEr. Kushal Ghimire
To address increased waste dumping in drains, a low-cost drainage cleaning robot controlled via a mobile app is designed to reduce human intervention and improve automation. Connected via Bluetooth, the robot’s chain circulates, moving a mesh with a lifter to carry solid waste to a bin. This project aims to clear clogs, ensure free water flow, and transform society into a cleaner, healthier environment, reducing disease spread from direct sewage contact. It’s especially effective during heavy rains with high water and garbage flow.
Presentation slide on DESIGN AND FABRICATION OF MOBILE CONTROLLED DRAINAGE.pptx
Image Representation & Descriptors
1. IMAGE REPRESENTATION &
DESCRIPTORS
By
Pundrik Patel (304)
Hardik Prajapati(270)
DEPARTMENTOF ELECTRICAL ENGINEERING
FACULTY OFTECHNOLOGY AND ENGINEERING
THE MAHARAJA SAYAJIRAO UNIVERSITYOF BARODA
VADODARA,GUJARAT, INDIA
2. Introduction
After an image has been segmented into regions ; the resulting
pixels is usually is represented and described in suitable form for
further computer processing.
Representing regions incolves in to two choices: in terms of it’s
1) external characteristics ( boundary)
2) internal characteristics ( pixels)
Above task is making data useful to computer
Next task is to describe the region on bases of representation
3. External representation is chosen when primary focus on
shape characteristics.
Internal representation is chosen when primary focus on
regionl properties like color and texture characteristics.
Sometime it is possible to choose both characteristics.
Features selected as descriptors should be insensitive to
changes in size, tanslation & rotation.
4. Representation
It deals with compaction of segmented data into
representations that facilitate the computation of
descriptors.
Technique of Representation :-
a. Chain codes
b. Polygonal Approximations
- Minimum perimeter polygones
- Merging technique
- Splitting technique
c. Signatures
d. Boundary Segments
e. Skeletons
5. Chain codes
They are used to represent a boundary by a connected
sequence of straight line segments of specified length &
direction.
Typically this representation is based on 4- or 8- connectivity
of segments.
The direction of each segments is coded by using a
numbering scheme.
1
0
3
2
2
1
0
3
4
5
6
7
4-connectivity 8-connectivity
6. A boundary code formrd as a sequence of such directional
number is referred as a Freeman chain code.
Digital images are acquired & processed in a grid format with
equal spacing in x and y directions.
So a chain code can be generated by following a boundary
(say clockwise direction) and assigning a direction to the
segments connecting every pair of pixels.
Unacceptable method: (because)
1) Resulting chain tends to be quite long
2) Any small disturbances along the boundary due to noise
or imperfect segmentation can cause changes in code.
7. A solution to this problem is to resample the boundary by
selecting a larger grid spacing.
Then, as the boundary is traversed, a boundary point is
assigned to each node of the large grid, depending upon the
proximity of original boundary to that node.
The re-sampled boundary can now be represented by a 4- or
8-code.
The accuracy of the resulting code representation depends
on the spacing of the sampling grid.
Example:-
Start Chain Code:
0, 0, 0, 3, 0, 0, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1
8. The chain code of a boundary depends upon the starting point.
However the code can be normalized:
– Assume the chain is a circular sequence
(given a chain of 1 to N codes ; N+1 = 1)
– Redefine the starting point such that we generate an integer of
smallest magnitude
Chain Code 1 Chain Code 2
0, 0, 0, 3, 0, 0, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1 3, 0, 0, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 0, 0, 0
Normalized Code 0, 0, 0, 3, 0, 0, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1
9. Chain code depend on orientation
– a rotation results in a different chain code One solution
– Use the “first difference” of the chain code instead of the
code itself
The difference is obtained by simply counting (counter-
clockwise) the number of directions that separate two
adjacent elements
0
1
2
3
Difference: Count the number of separating
directions inan anti-clockwise fashion
2 1 0 1 0 3 3 2 2 2 Chain Code
3 3 1 3 3 0 3 0 Difference Code
Ex. First difference of 4-direction chain code
10103322 is 3133030.
Considering the circular sequence first
element is calculated by subtracting last and
first component. Ex. 33133030
10. Polygon Approximation
A digital boundary can be approximated with arbitrary
accuracy by a polygon.
For a closed boundary, approx becomes exact when
no. of segments of polygon = no. of points in the boundary.
Goal of poly. Approx is to capture the essence of the shape in
a given boundary using fewest no. of segments.
11. Min. Perimeter Polygon (MPP):
An approach for generating an algorithm to compute MPPs
is to enclose a boundary by a set of concatenated cells.
Allow the boundary to shrink as a rubber band.
This shrinking produces the shape of a polygon of min.
perimeter.
Size of cells determine the accuracy of the polygonal
approximation.
In the limit if size of each cell corresponds to a pixel in the
boundary , the error in each cell between the boundary & the
MPP approx. at most would be √2d, where d-min possible
pixel distance.
The objective is to use the largest possible cell size
acceptable in a given application.
Thus, producing MPPs with fewest no. of vertices.
12. The cellular approach reduces the shape of the object
enclosed by the original boundary.
boundary
enclose
by
cells
Min. Perimeter
Polygon
13. Merging Techniques
Techniques based on average error or other criteria have
been applied to the problem of polygonal approximation.
One approach is to merge points along a boundary until the
least square error line fit of the points merged so far exceeds
a preset threshold.
When this condition occurs, parameters of line are stored,
the error is set to 0, the procedure is repeated, merging new
points along the boundary until the error again exceeds the
threshold.
Merging technique problem:
– No guarantee for corner detection
Solution:
– Splitting Techniques
14. Splitting Techniques
to subdivide a segment successively into two parts until a
given criterion is satisfied.
– Objective: seeking prominent inflection points
Step:-
1. Start with an initial guess, e.g., based on majority axes
2. Calculate the orthogonal distance from lines to all points
3. If maximum distance > threshold, create new vertex there
4. Repeat until no points exceed criterion
16. Signature
It is a 1D functional representation of a boundary & may be
generated in various ways.
One of the simplest is to plot the distance from the centroid
to the boundary as a function of angle.
Signatures generated by this method are invariant to
translation but they depend on rotation and scaling.
Normalization with respect to rotation can be achieved by
finding a way to select the same starting point to generate
the signature , according to shape.
One way to normalize this is to scale all functions so that
they always span the same range of values. e.g [0,1]
17. Advantage :
- it’s simplicity
disadvantage :
- scaling of the entire function depends upon only two
values: maximum & minimum.
18. Boundary segments
The boundary can be decomposed into segments.
– Useful to extract information from concave parts of the
objects.
A good way to achieve this is to calculate the convex Hull of
the region enclosed by the boundary Hull.
Can be a bit noise sensitive
1. Smooth prior to Convex hull calculation
2. Calculate Convex Hull on polygon approximation
19. Convex Hull, H, of an arbitrary set, S, is the smallest set
containing S
H minus S (H-S)
– Is called the convex deficiency
We can use the convex deficiency to mark features
Follow the contour of S and mark points that transitions
into or out of the convex deficiency
20. Using Convex Hull and its Deficiency
This data can be used to describe the region
– Number of pixels in convex deficiency
– Number of components in convex deficiency
– Ratio lengths of the transition points
– so on
21. Skeletons
An important approach to represent the structural shape of a
plane region is to reduce it to a graph.
The reduction may be accomplished by obtaining the
skeleton of the region via thinning (skeletonizing) algorithm.
Skeleton of a region may be defined as the medial axis
transformation (MAT).
MAT of a region R with border B is as follows:
- For every point p in R, we find its closest neighbor in B. If
p has more than such neighbor, it is said to belong to the
medial axis (skeleton).
‘prairie fire concept’
22. Implementation involves calculating the distance from every
interior point to every boundary point on region.
Thinning algorithm deals with deleting the boundary points
of a region subject to condition that deleting these points:
1) Does not remove end points.
2) Does not break connectivity &
3) Does not cause excessive erosion of the region.
23. Thinning algorithm:
Region points are assumed to have value 1 & background
points are assumed to have value 0.
p9 p2 p3
p8 p1 p4
p7 p6 p5
Step 1
flags a contour point for deletion if the followingconditions
are satisfied:
a) 2 ≤ N(p1) ≤ 6
b)T(p1) = 1
c) p2.p4.p6 = 0
d) p4.p6.p8 = 0
24. where N(p1) is the number of nonzero neighbors of p1;
i.e. N(p1) = p2 + p3 + …… + p8 + p9
where pi is either 0 or 1.
T(p1) is number of 0-1 transitions in the ordered sequence p2,
p3, ….., p8, p9., p2
In Step 2:
conditions a & b remain the same, but conditions c & d are
changed to
c’) p2.p4.p8 = 0
d’) p2.p6.p8 = 0
0 0 1
1 p1 0
1 0 1
Step 1 is applied to every border pixel in binary region under
Consideration If 1 or more of conditions a to d are violated, the
value of point in question is not changed.
25. If all conditions are satisfied, the point is flagged
for deletion.
But not deleted until all border points have been
processed.
This delay prevents the change of structure of
data during execution of algorithm.
After step 1 been applied to all border points,
those who are flagged are deleted (changed to
0).
Step 2 is applied to resulting data in exactly
same manner as step1.
26. Boundary Descriptors
Some simple discriptors:-
Length of the contour
– Simply count the number of pixels along the border
–You may consider diagonally connected pixels to count as √2
Diameter of the boundary B
– Diam(B) = max[D(pi,pj)]
– this is the major axis of the region
Curvature
– Rate of change of the slope
Bounding Box
– Smallest rectangle (aligned with the image axis) that can bound
the region
27. Shape number
– compute the chain code difference
– re-order this to create the minimum integer
– this is called the shape number
Example:-
28. Fourier Descriptors
Consider an N-point digital boundary in the xy plane
This forms a coordinate pairs (xo, yo), (x1, y2), . . . . ., (xn-1, yn-1)
We can consider this as two vectors
– x(k) = xk
– y(k) = yk
Furthermore
– We could consider this a complex number
– s(k) = x(k) + jy(k) where j=sqrt(-1)
29. Using the vector s(k)
Compute the 1-D Discrete FourierTransform