Design a c program that can extract object edges

Assignment Help Basic Computer Science
Reference no: EM131188520

OBJECTIVE

Design a C or C++ (ANSI standard) program that can extract object edges and detect the presence of straight lines.

BACKGROUND

Automated visual quality control and visual monitoring of industrial assembly lines are the application areas where computer vision has proven its efficiency. Vision systems can operate continuously and provide measurement of critical parameters such as position and orientation of objects, their shape, colour, etc. An obvious advantage of such systems is the possibility of controlling image acquisition process optimising illumination, position of cameras and background colour. As a result, images used for automated visual inspection have good quality in terms of contrast and SNR.

Your program shall include the following stages:

1. Rescale the image down by the factor of 2, to reduce computational complexity of the subsequent stages

2. Extract boundaries of objects using 3x3 gradient operators

3. Save the generated b/w image gradient.bmp

4. Detect the presence of straight lines and measure their orientation with the precision 3o

5. Extract boundaries of objects using binary morphology

6. Save the generated b/w image morphology.bmp

7. Detect the presence of straight lines and measure their orientation with the precision 3o

8. Compare performance and efficiency of both methods and reflect your observations, findings and conclusions in the report assignment2report.txt

DESIGN SPECIFICATION

You need to use OpenCV library to implement the solution.

It can be tested using asm2.bmp test image. Since information about colour is not required, it contains only 8bit/pix luminance component. The image size is 640x480.

Your program shall produce:

1. Two 8bit/pix black/white (b/w) images gradient.bmp and morphology.bmp ( size 320x240), which represent object boundaries obtained by two boundary extraction methods. The level of background should be set to 0 (black), while the pixels corresponding to boundaries are set to 255 (white).

Comments: You may try to apply a LPF before the gradient-based method to improve overall accuracy of edge detection. If needed, you can also apply binary morphological methods ( erosion, dilation, etc) to smooth boundaries obtained as a thresholded output of the gradient-based method.

Considering the second solution, before applying the morphological boundary detection method, you need to binarize the input image first. The test image provided has a very high contrast and therefore selection of a threshold is not very difficult. For asm2.bmp the threshold can be set around 90-100.

2. For each boundary detection method you need to printout parameters of all detected lines in the following format:

Line detection in a b/w image produced by gradient operators: Line 1 is detected. Orientation = ... degrees
Line 2 is detected. Orientation = ... degrees
or
No straight lines detected

Having implemented and tested the program, you should investigate some practical aspects of boundary extraction and straight-line detection. For example:

- You can compare accuracy and computational complexity of two boundary detection methods
- You can evaluate efficiency of edge detection with LPF pre-processing and without it
- You can measure computational complexity and execution time of Hough Transform
- You can analyze sensitivity of your system to noise by running the program with the second test image asm2n.bmp

Your observations, findings and conclusions must be summarized in the report assignment2report.txt

Attachment:- asm.rar

Verified Expert

In this assignment, a C++ program was developed to investigate the various Edge Detection and Shape Detection procedures in Image Processing using the OpenCV library. The 3x3 Sobel Derivative was found using OpenCV Sobel function and the morphological operations were used as the second method of edge detection. The lines were detected using the popular Hough Transform shape detection method by applying OpenCV HoughLines function.

Reference no: EM131188520

Questions Cloud

Shareholders are more apt to prefer high dividend payout : Shareholders are more apt to prefer a high dividend payout if the firm:
Take bet on the yield spread between two bonds : Assume that you wish to take a bet on the yield spread between two bonds: a 10-year corporate bond rated BB and a 10-year Treasury bond. Are you betting that rates are going to converge or diverge? Why? Which bond will you buy and which bond will you..
Important aspects of a good corporate : From an executive leadership perspective, write a summary on what would be considered the most important aspects of a good corporate culture.  As a manager what specific actions would you do to ensure these aspects are implemented in an organization ..
Compose a multimedia presentation : Compose a multimedia presentation of 6 to 8 slides about your wine products. This presentation should demonstrate cross-cultural competency so that your product can be as successful in this foreign country as it is in the United States
Design a c program that can extract object edges : Design a C or C++ (ANSI standard) program that can extract object edges and detect the presence of straight lines.
Calculate the fuel per g and per ml of mixture : an intimate mixture of Fe2O3 and Al is used in solid fuel rocket .calculate the fuel per g and per ml of mixture. del Hal2o3 =399 kcal , del H fe2o3 =199 kcal density of Fe2O3 and AL are 5.2 g /ml and 2.7 g /ml respectively
Explain the impact that unions have on the operations : Explain the impact that unions have on the operations of an organization and Describe the principle reasons labor/management relations are challenged and result in conflict.
Compute and evaluate the dividend yield ratio : The following account balances were selected from the records of TAC Corporation at the end of the fiscal year after all adjusting entries were completed: Common stock ($20 par value; 115,000 shares authorized, 43,000 shares issued, Compute and evalu..
Describe two people you know from two different cultures : Describe two people you know from two different cultures. Compare or contrast 5 characteristics the people have prompted by their cultures.

Reviews

mor1188520

9/11/2016 9:38:13 PM

The openCv libraries are machine dependent and has to be separately installed and configured in the machine for compilation. The openCV headers are used in the program.

len1188520

9/1/2016 1:23:56 AM

Submit your assignment before the due date. Follow the submission needs explained in the section SUBMISSION. You are allowed to submit up to three times before the due date. Only the latest submission will be marked and tested. Enquiries about the marks can only be made within a maximum of one week after the assignment results are published.

len1188520

9/1/2016 1:22:21 AM

C++ program that can extract object edges and detect the presence of straight lines - In this assignment you have to submit: - assignment2.c source file with appropriate comments - assignment2report.txt (doc, or pdf) report The report must provided a two page description of the implemented solution, its analysis regarding sensitivity to computational and noise complexity, your conclusions and observations, which show your understanding of the theoretical aspects of edge detection, line detection and their practical implementation.Do not add a separate header *.h file to your source code as it makes evaluation and marking of the assignment more complex.

Write a Review

Basic Computer Science Questions & Answers

  Discuss the manner in which java passes parameters to method

Discuss the manner in which Java passes parameters to a method.

  Sustainable and effective use of health care information

Once an information system is implemented, it is important that an organization's leadership demonstrate a continued commitment to that system through rigorous and routine support and maintenance.

  Pair of committees having a common member

Suppose that there are n committees with each pair of committees having a common member and each person is on two committees. How many people are there?

  Creating project organization in enterprise business

Organization structures generally used to create a project organization in an enterprise business environment.

  Structured and object-oriented designs

Structured and object-oriented designs are the two main contenders for programming methodologies relevant to the creation of documentation for application programs. The choice of methodologies will greatly affect how we approach the challenge and ..

  Write a preprocessing script to create a file

Write a preprocessing script to create a file

  Sort the pianos from high quality to low

a. Sort the pianos from high quality to low. b. Sort the pianos from high quality to low and, within each quality, sort by Building and then by Location within that building.

  Standardize programming between many processor platforms

Do you think the java virtual machine is a good way to standardize programming between many processor platforms? Explain your view with details.

  Increasing the number of cpus in a computer system tends to

increasing the number of cpus in a computer system tends to increase system performance. there are different types of

  Programming in c++

Programming in C++ Loops and DecisionsPart A Explain the difference between: s = 0; If (x > 0) s++; If (y > 0) s++;

  Modularized body mass index

Design a modularized Body Mass Index (BMI) Program which will calculate the BMI of a team player. The formula to calculate the BMI is as follows:

  What is an html text editor

Windows NotePad is a simple text editor. What is the difference between a text editor and a word processor?" What is an HTML Text Editor? What is it used for and how does it compare to a regular text editor

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd