Compare commits

...

2 Commits

Author SHA1 Message Date
Likaon
867caff650 Доработан README 2026-05-24 01:23:38 +03:00
Likaon
ce89043fb8 Финальные изменения и добавления:
Теперь можно установить приложение на рабочий стол
Кардинально изменил README
2026-05-24 01:13:47 +03:00
7 changed files with 112 additions and 11 deletions

116
README.md
View File

@@ -1,20 +1,118 @@
# CourseWork
# Stego App # Stego App
Стеганографическое приложение для сокрытия данных в изображениях. **Стеганографическое приложение для сокрытия данных в изображениях**
## Функциональность ## Функциональность
- **LSB метод** (Least Significant Bit) - сокрытие в младших битах пикселей | Метод | Описание |
- **DCT метод** (Discrete Cosine Transform) - сокрытие в частотной области |-------|------------------------------------------------------------------------------------------------|
|**LSB**|(Least Significant Bit) | Сокрытие в младших битах пикселей. Работает с любыми изображениями |
|**DCT**|(Discrete Cosine Transform) | Сокрытие в частотной области. Для гладких/однотонных изображений |
### Возможности
- Графический интерфейс (Tkinter) - Графический интерфейс (Tkinter)
- CLI интерфейс - CLI интерфейс
- Поддержка русских и английских текстов
- Сохранение результатов на устройство
- Расчёт вместимости изображения
- Сравнение изображений (PSNR)
---
### Получение кода
## Способ 1: Клонирование репозитория (если есть доступ)
git clone <ссылкаа_репозиторий>
cd CourseWork
# Что такое git clone?
Это команда, которая скачивает копию репозитория с сервера (например, с Gitea, GitHub) на ваш компьютер.
# Где взять ссылку?
В веб-интерфейсе репозитория нажмите кнопку Clone или Клонировать и скопируйте ссылку (HTTPS или SSH).
## Способ 2: Скачать архив с Gitea/GitHub
1. Перейдите на страницу репозитория
2. Нажмите кнопку Download ZIP или Скачать архив
3. Распакуйте архив
4. Откройте терминал в распакованной папке
## Установка ## Установка
### Автоматическая установка ### Автоматическая установка (рекомендуется)
```bash
chmod +x install.sh chmod +x install.sh
./install.sh ./install.sh
### Установка через pipx
pipx install .
### Ручная установка зависимостей
pip install numpy pillow scipy
### Установка Tkinter (Ubuntu/Debian)
sudo apt install python3-tk
### Запуск
|**Команда** |**Описание**|
|stego-gui |Графический интерфейс|
|stego --help| Помощь по CLI|
### CLI команды
#LSB кодирование
stego encode lsb image.png out.png -m "Секретное сообщение"
#LSB декодирование
stego decode lsb out.png
#DCT кодирование
stego encode dct image.png out.png -m "Секретное сообщение"
#DCT декодирование
stego decode dct out.png
#Показать вместимость изображения
stego capacity image.png
#Сравнить два изображения (PSNR)
stego psnr original.png modified.png
### Удаление
#Через pipx
pipx uninstall stego-app
#Через скрипт
chmod +x uninstall.sh
./uninstall.sh
### Требования к системе
ОС: Linux (Ubuntu/Debian и производные)
Python: 3.8 или выше
Зависимости: numpy, pillow, scipy, tkinter
Структура проекта
text
CourseWork/
├── core/ # LSB, DCT, Utils
├── gui/ # Графический интерфейс
├── icons/ # Иконки приложения
├── main.py # Точка входа (CLI + GUI)
├── setup.py # Установщик пакета
├── install.sh # Скрипт автоматической установки
├── uninstall.sh # Скрипт удаления
├── stego.desktop # Ярлык для меню приложений
├── requirements.txt # Зависимости проекта
└── README.md # Документация
### Известные ограничения
DCT метод требует размеры изображения, кратные 8 (например, 400×400, 512×512, 800×800)
DCT метод рекомендуется только для гладких/однотонных изображений
Результат кодирования рекомендуется сохранять в формате PNG (без потерь)
### Лицензия
MIT License
---

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -1,3 +1,4 @@
""" Установка приложения """
cat > install.sh << 'EOF' cat > install.sh << 'EOF'
#!/bin/bash #!/bin/bash
# Установка Stego App для Ubuntu/Debian # Установка Stego App для Ubuntu/Debian

View File

@@ -1,6 +1,6 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
""" """
CLI интерфейс для стеганографических методов LSB и DCT. CLI интерфейс для методов LSB и DCT.
Использование: Использование:
python main.py encode <method> <image> <output> [-m MESSAGE] [-f FILE] python main.py encode <method> <image> <output> [-m MESSAGE] [-f FILE]

View File

@@ -1,3 +1,4 @@
""" Основа установки и работы приложения """
#!/usr/bin/env python3 #!/usr/bin/env python3
from setuptools import setup, find_packages from setuptools import setup, find_packages

View File

@@ -7,4 +7,4 @@ Icon=stego
Terminal=false Terminal=false
Categories=Graphics;Utility; Categories=Graphics;Utility;
Keywords=steganography;hide;image; Keywords=steganography;hide;image;
StartupNotify=true StartupNotify=true

View File

@@ -1,3 +1,4 @@
""" Удаление приложения """
#!/bin/bash #!/bin/bash
# Удаление Stego App # Удаление Stego App