Evaluate patterns and paradigms appropriate for tasks

Assignment Help Other Subject
Reference no: EM133328932

Programming and Algorithms

Learning Outcome 1: Understand algorithm efficiency in order to select and implement the most appropriate for a given task
Learning Outcome 2: Evaluate patterns and paradigms appropriate for specific tasks

Assignment Tasks

The assignment has been split into two parts:
1. Encoding: required to encode an image with a piece of given text
2. Decoding: required to decode an encoded image to extract the text

You are expected to build a piece of software that enables the user to encode a given image with a piece of text. The text to be encoded will be supplied by the user (i.e. it can be inserted via the command line). Once the image has been successfully encoded with the text, a method to decode the image to retrieve the text will also be required.

Task 1: Encoding an Image with Text
For this task you will need to encode an image with text. You are required to use the tools and techniques that have been taught in this module,
i.e. OpenCV for image handling etc. The end-user will have the option to insert the filename and extension for an image of their choice, alongside with the text they would like to encode within the image.

For example, the user may want to use to the filename cat.png, therefore, they will have an option to enter the filename in software you design (verifying that it is a valid image file). The end-user will then be asked what text they would like to encode. Your terminal window may look something like this:
$ Image Filename (with extension): cat.png
$ Encoded Text: I like cats.
Once these details have been passed through, the software will encode the text within the image file and create a new image file, with the suffix _encoded, i.e. cat_encoded.png.

The whole purpose of this task is that the resulting image looks exactly the same as the input image, i.e. there is no visible changes can be seen in the image.

Task 2: Decoding the Image
For this task, you are expanding upon the software you designed in task one and add a feature to decode the encoded image. The new feature should take the image path of the previously encoded image (should be entered via the terminal by an end-user) and then extract the text that was coded within it.
The extracted text will be displayed inside the terminal window, similar to the example below:

Task 3: Documentation
The documentation aspect of this task has been split into two parts: user and developer documentation.
The user documentation will be concerned with clear instructions on how to use the software, along with any module requirements that are needed to run or compile the software, this will be created in the README.md file.
The developer documentation will be concerned with an explanation of the functionality (this will be provided in the form of docstrings in the source-
code), along with information pertaining to how a developer may extend the piece of software.

Task 4: Testing
The purpose of this task will build upon the work you have done in tasks one and two. For each method implemented, you are expected to write a test case to ensure it is working as expected.
Note: It will be expected that the unit testing will be provided in a separate class file.

Task 5: Version Control
The purpose of this task is to ensure that you are developing the tool iteratively and collaboratively using relevant version control features, such as forking, cloning and merging.
For your submission, you are to include a URL to the University GitHub service repository along with the commit tag you want marking. Note: When you submit the GitHub repository link, ensure that your repository has been set to private and that you addCroft as collaborators. You must also use the 5062CEM organization on GitHub.

Task 6: Submission Guidelines
You will be expected to follow the submission guidelines, as outlined in the document below. Essentially, you are required to follow these rules:
1. Page One: Consists of a GitHub URL to the repository of your source-code 2. For each source-code file you have (filename.py), you need to provide:
1. A single page, with the name of the file
2. A single (or multiple) page(s) with the source-code in that file
3. The Python code file(s) must be submitted, the screenshots will not be accepted.

Attachment:- Programming and Algorithms.rar

Reference no: EM133328932

Questions Cloud

Characteristics of baroque art : How does the artist use light to create mood and shape the composition? What religious or political beliefs influenced this work?
Dimensional space on two dimensional surfaces : There are several techniques artists use to depict three dimensional space on two dimensional surfaces.
Example of corinthian capital : Find and provide an example of a Corinthian capital. What makes this capital different from a doric capital. Describe the features of each.
Contrast achilles and hector from the iliad : Compare and contrast Achilles and Hector from The Iliad. For your answer, consider their strengths, weaknesses, motivation, and accomplishments,
Evaluate patterns and paradigms appropriate for tasks : 5062CEM Programming and Algorithms, Coventry University - Evaluate patterns and paradigms appropriate for specific tasks
Explain why accident occurred : How that theory could be applied to explain why accident occurred. Compare and contrast theories; show how one of the other theories could not have applied.
Subsequently dependent on in our modern society : What are we free from and subsequently dependent on in our modern society? Which is more important, what we are free from or what we are dependent on?
Major moral themes in baroque period painting : Why was Holbein's The Body of the Dead Christ in the Tomb unusual in its treatment? What was one of the major moral themes in Baroque period painting?
Alice neel versus the seated woman with bent knees : Comparison essay on Priscilla Johnson,1966 by Alice Neel versus the Seated woman with bent knees 1917 by Egon Schiele.

Reviews

Write a Review

Other Subject Questions & Answers

  Cross-cultural opportunities and conflicts in canada

Short Paper on Cross-cultural Opportunities and Conflicts in Canada.

  Sociology theory questions

Sociology are very fundamental in nature. Role strain and role constraint speak about the duties and responsibilities of the roles of people in society or in a group. A short theory about Darwin and Moths is also answered.

  A book review on unfaithful angels

This review will help the reader understand the social work profession through different concepts giving the glimpse of why the social work profession might have drifted away from its original purpose of serving the poor.

  Disorder paper: schizophrenia

Schizophrenia does not really have just one single cause. It is a possibility that this disorder could be inherited but not all doctors are sure.

  Individual assignment: two models handout and rubric

Individual Assignment : Two Models Handout and Rubric,    This paper will allow you to understand and evaluate two vastly different organizational models and to effectively communicate their differences.

  Developing strategic intent for toyota

The following report includes the description about the organization, its strategies, industry analysis in which it operates and its position in the industry.

  Gasoline powered passenger vehicles

In this study, we examine how gasoline price volatility and income of the consumers impacts consumer's demand for gasoline.

  An aspect of poverty in canada

Economics thesis undergrad 4th year paper to write. it should be about 22 pages in length, literature review, economic analysis and then data or cost benefit analysis.

  Ngn customer satisfaction qos indicator for 3g services

The paper aims to highlight the global trends in countries and regions where 3G has already been introduced and propose an implementation plan to the telecom operators of developing countries.

  Prepare a power point presentation

Prepare the power point presentation for the case: Santa Fe Independent School District

  Information literacy is important in this environment

Information literacy is critically important in this contemporary environment

  Associative property of multiplication

Write a definition for associative property of multiplication.

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