Skip to content
Snippets Groups Projects
Project proposal.md 2.85 KiB
Newer Older
Majd Hafiri's avatar
Majd Hafiri committed
# Secret Pixels
Vipin Thomas's avatar
Vipin Thomas committed

> Team Member 1 (Majd Hafiri) ,Team Member 2 (Vipin Koshy Thomas)
Vipin Thomas's avatar
Vipin Thomas committed

## Overview
Majd Hafiri's avatar
Majd Hafiri committed
We want to create a product which helps in exchanging secret words inside Images using pixel manipulation.
Vipin Thomas's avatar
Vipin Thomas committed


## Background
Majd Hafiri's avatar
Majd Hafiri committed
This program will be used by two parties, the sender and the receiver. The sender and the receiver will be able to communicate secretly based on algorithm that manipulates the pixels of one colour image. Doing small changes to the values for some pixels of one colour image won't be possible for human eyes to see those modified pixels but It is possible to do it on a software. These modified pixels represent a message somehow.

Vipin Thomas's avatar
Vipin Thomas committed


## Implementation Strategy
Majd Hafiri's avatar
Majd Hafiri committed
In order for both parties to agree on a a secret message , An algorithm must be implemented. This Algorithm accepts the user message and change some pixels values of an Image. Pixel values modification is based on a specific criteria (not decided yet). For example , If the sender wants to send the number "5" as a secret message , The algorithm could change 5 pixel values in the one color image and in the receiver part , the algorithm will calculate the number of modified pixels.
Vipin Thomas's avatar
Vipin Thomas committed

Majd Hafiri's avatar
Majd Hafiri committed
How it works:


Vipin Thomas's avatar
Vipin Thomas committed

## Tasks
*This section is the most important because it gives us a sense of the scope of your project and forces you to think about the deliverables to which you'll hold yourself.*

Break down your project into a sequence of small tasks that you can feasibly accomplish to incrementally build towards a complete working project.

Include at least three stretch goals. A *stretch goal* is an extension that you think would be really awesome, but would probably be outside the scope of the final project.

What tasks do you think will be easy? What tasks do you think will be hard? Tedious? Trivial? Give us a sense of your current outlook on these project tasks.

Annotate each of the tasks (including stretch goals) with an estimate for how long you believe the task will take you. If you're in a group, also annotate each task with the names of anyone responsible for the task.

If you've already accomplished some of the tasks, make a note of it! If you're incorporating a final project for another class into this final project, you'll be held to a higher standard of quality and quantity, so make a note of that too.

This task list isn't binding - you can change your mind, modify tasks, etc - but it's a good starting point to organize incremental development.


## Resources
*This section is smaller and less vital than the others. If you're not using any external resources, you can leave this blank.*

What external resources will you be working with? If you are working with a dataset, how will you acquire the data set? If you're publishing some project (e.g. web app), how will you host your project? If your project requires hardware, how will you get it? Are there any other resources you need to acquire before starting?