Финальные изменения и добавления:

Теперь можно установить приложение на рабочий стол
Кардинально изменил README
This commit is contained in:
Likaon
2026-05-24 01:13:47 +03:00
parent 2f2117e240
commit ce89043fb8
7 changed files with 94 additions and 11 deletions

View File

@@ -1,20 +1,100 @@
# 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)
---
## Установка ## Установка
### Автоматическая установка ### Автоматическая установка (рекомендуется)
```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