{"id":18911529,"url":"https://github.com/mhsattarian/steganography","last_synced_at":"2026-03-08T20:30:15.715Z","repository":{"id":115445120,"uuid":"172272887","full_name":"mhsattarian/steganography","owner":"mhsattarian","description":"Coding an image within another by compositing high-order bits of each image.","archived":false,"fork":false,"pushed_at":"2019-02-26T15:31:01.000Z","size":9236,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-12-31T13:42:03.254Z","etag":null,"topics":["computer-vision","python","steganography"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mhsattarian.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-02-23T22:54:25.000Z","updated_at":"2023-12-12T07:47:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"6465d23a-741d-4dc2-905b-072b04e7f6ae","html_url":"https://github.com/mhsattarian/steganography","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mhsattarian%2Fsteganography","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mhsattarian%2Fsteganography/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mhsattarian%2Fsteganography/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mhsattarian%2Fsteganography/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mhsattarian","download_url":"https://codeload.github.com/mhsattarian/steganography/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239906259,"owners_count":19716581,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["computer-vision","python","steganography"],"created_at":"2024-11-08T09:49:20.629Z","updated_at":"2026-03-08T20:30:15.684Z","avatar_url":"https://github.com/mhsattarian.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Steganography\n\n```\n┏━┓╺┳╸┏N╸┏━╸┏O┓┏┓╻┏━┓┏E╸┏E┓┏━┓┏E┓╻ ╻╻ ╻       \n┗━┓ A ┣╸ ┃╺┓┣━┫┃U┫┃ ┃┃╺┓┣┳┛┣M┫┣━┛┣?┫┗┳┛             Hide an Image within another\n┗━C ╹ ┗━╸┗Y┛╹ ╹╹ ╹┗S┛┗━┛╹┗╸╹ ╹╹  ╹ ╹ ╹ .py\n```\n\nCoding an image within another by compositing high-order bits of each image.\n\nAs seen below 4 high-order bit of each pixel of an image contain most if the details about it:\n\n![Montage of extracted images](Images/extracted_images/montage.png)\n\nWe can remove 4 low-order bits and replace them with 4 high-order bits of another image. so we would easily be able to hide an image within another and still got most of the details.\n\nso here we use an image as container also called `container.png` and another one as the data to be code inside it called `containee.png` to produce and image looking exactly like container bot have the containee image inside, hidden:\n\n![](Images/montage.png)\n\n## Usage\n\n\u003e It needs container and containee images to be the same size.\n\nCreate a virtualenv and install required packages:\n\n```shell\nvirtualenv venv\nsource venv/bin/activate\npip install -r requirements.txt\n```\n\nthen, Encode images or Decode with:\n\n```shell\n# Encode\npython steganography.py encode \u003ccontainer_image_path\u003e \u003ccontainee_image_path\u003e\n\n# Decode\npython steganography.py decode \u003cimage_path\u003e\n```\n\nsee `--help` for more options.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmhsattarian%2Fsteganography","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmhsattarian%2Fsteganography","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmhsattarian%2Fsteganography/lists"}