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

  Equation to the standard form for a hyperbola

Convert the equation to the standard form for a hyperbola by completing the square on x and y.

  The user to enter the replacement cost of a building

Design a modular program that asks the user to enter the replacement cost of a building and than displays the minimum amount of insurance he or she should but for the property

  State any assumptions you make

Outline algorithms for insertion, deletion, and modification of a file record. State any assumptions you make.

  Database redesign is working properly in redesign testing

To make sure that database redesign is working properly during redesign testing process, a means should be created to do which of the following?

  How are they same and different

How are they the same? How are they different?

  Explain local telephone calls-long distance telephone calls

Will distinction between local telephone calls and long distance telephone calls ever disappear? What may cause this to happen?

  Signed-magnitude representations binary numbers in computers

Why do we require signed-and-magnitude representations of binary numbers in computers? Represent decimal values: -37, -54, and 56 in binary by using signed-and magnitude representation.

  Combines the separately compiled modules of a program

Loader is a system program that combines the separately compiled modules of a program into a form suitable for execution

  How would the prompt look from that point forward

When you are done with that, explain what else you might need to do when configuring a router and what could be done to make the process quicker.

  Managing files and the world of windows

Managing Files and the World of Windows. Take a position on whether or not standardization and naming conventions are critical for properly managing files and folders in a Windows environment.

  Draw all the possible spanning trees

. Draw all the possible spanning trees.

  Aspect of professional communication

You will individually research a topic on some aspect of professional communication. You will then prepare a 1-2 page outline using the standard outline format (shown below) that would be used in a training session. At the end of your outline yo..

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