Refactoring the department structure
This commit is contained in:
60
image/create_excel_with_images.md
Normal file
60
image/create_excel_with_images.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# Руководство по использованию скрипта для создания Excel с изображениями
|
||||
|
||||
Этот скрипт позволяет создать Excel файл, содержащий информацию об изображениях из указанной папки. Для каждого изображения будут записаны его имя, размер (в КБ) и добавлена миниатюра изображения.
|
||||
|
||||
## Зависимости
|
||||
|
||||
Перед использованием убедитесь, что у вас установлены следующие библиотеки:
|
||||
|
||||
- `openpyxl` — для работы с Excel файлами.
|
||||
- `Pillow` (PIL) — для обработки изображений.
|
||||
|
||||
Установите их через pip:
|
||||
|
||||
```bash
|
||||
pip install openpyxl Pillow
|
||||
```
|
||||
|
||||
## Как использовать
|
||||
|
||||
### 1. Запуск скрипта
|
||||
|
||||
Скрипт используется через командную строку. Запустите его следующим образом:
|
||||
|
||||
```bash
|
||||
python script.py <путь_к_папке> <путь_для_сохранения_файла>
|
||||
```
|
||||
|
||||
Где:
|
||||
|
||||
- `<путь_к_папке>` — путь к папке с изображениями (например, `/home/user/images/`).
|
||||
- `<путь_для_сохранения_файла>` — путь и имя для сохранения Excel файла (например, `output.xlsx`).
|
||||
|
||||
### 2. Что делает скрипт
|
||||
|
||||
- Скрипт проходит по всем файлам в указанной папке.
|
||||
- Проверяет, является ли файл изображением (по расширениям `.png`, `.jpg`, `.jpeg`, `.gif`, `.bmp`).
|
||||
- Для каждого изображения добавляется информация:
|
||||
- Имя файла
|
||||
- Размер в килобайтах
|
||||
- Миниатюра изображения размером 100x100 пикселей
|
||||
- Все данные записываются в Excel файл с тремя столбцами: **Filename**, **Size (KB)** и **Thumbnail**.
|
||||
|
||||
### 3. Пример использования
|
||||
|
||||
```bash
|
||||
python script.py /home/user/images/ output.xlsx
|
||||
```
|
||||
|
||||
После выполнения скрипта будет создан Excel файл `output.xlsx`, в котором будут перечислены изображения из папки `/home/user/images/`.
|
||||
|
||||
## Примечания
|
||||
|
||||
- Миниатюры изображений вставляются в Excel в отдельный столбец.
|
||||
- Скрипт автоматически устанавливает высоту строк в зависимости от высоты изображения.
|
||||
- Поддерживаются форматы изображений: PNG, JPG, JPEG, GIF, BMP.
|
||||
- Все изображения сжимаются до размеров 100x100 пикселей.
|
||||
|
||||
## Источник
|
||||
|
||||
Скрипт написан на Python с использованием библиотек `openpyxl` для работы с Excel и `Pillow` для работы с изображениями.
|
||||
65
image/crop_image_to_object_pixels.md
Normal file
65
image/crop_image_to_object_pixels.md
Normal file
@@ -0,0 +1,65 @@
|
||||
# Руководство по использованию скрипта для обрезки PNG изображений
|
||||
|
||||
Этот скрипт предназначен для обрезки PNG изображений в указанной папке, чтобы сохранить только видимый объект, удаляя пустое пространство вокруг. Обрезка выполняется с использованием информации о непрозрачных пикселях изображения.
|
||||
|
||||
## Требования
|
||||
|
||||
Перед запуском скрипта убедитесь, что установлены следующие библиотеки:
|
||||
|
||||
- **Pillow**: для обработки изображений.
|
||||
|
||||
Установите их с помощью команды:
|
||||
|
||||
```bash
|
||||
pip install Pillow
|
||||
```
|
||||
|
||||
## Как использовать
|
||||
|
||||
### Запуск скрипта
|
||||
|
||||
1. Скачайте или скопируйте скрипт на ваш компьютер.
|
||||
2. В командной строке запустите скрипт, указав путь к папке с PNG изображениями:
|
||||
|
||||
```bash
|
||||
python script.py <путь_к_входной_папке> [путь_к_выходной_папке]
|
||||
```
|
||||
|
||||
- **<путь_к_входной_папке>** — путь к папке с PNG изображениями, которые необходимо обработать.
|
||||
- **[путь_к_выходной_папке]** (необязательный параметр) — путь к папке, куда будут сохранены обработанные изображения. Если не указать, изображения сохранятся в той же папке, что и входные.
|
||||
|
||||
### Пример использования
|
||||
|
||||
```bash
|
||||
python script.py /path/to/images /path/to/output
|
||||
```
|
||||
|
||||
Если не указать выходную папку, изображения будут обработаны и сохранены в той же папке:
|
||||
|
||||
```bash
|
||||
python script.py /path/to/images
|
||||
```
|
||||
|
||||
### Что делает скрипт?
|
||||
|
||||
- Скрипт перебирает все PNG изображения в указанной входной папке.
|
||||
- Для каждого изображения он находит границы видимых объектов (то есть непрозрачных пикселей).
|
||||
- Затем изображение обрезается до этих границ и сохраняется в выходной папке.
|
||||
|
||||
### Пример вывода
|
||||
|
||||
При обработке каждого изображения в консоль выводится сообщение:
|
||||
|
||||
```
|
||||
Processed image1.png
|
||||
Processed image2.png
|
||||
```
|
||||
|
||||
## Возможности
|
||||
|
||||
- Скрипт поддерживает работу с папками, содержащими несколько изображений.
|
||||
- Если выходная папка не указана, скрипт создает её автоматически или использует входную папку для сохранения результатов.
|
||||
|
||||
## Примечание
|
||||
|
||||
Скрипт работает только с изображениями формата PNG.
|
||||
58
image/split_image.md
Normal file
58
image/split_image.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# Руководство по использованию скрипта для разрезания изображения на части
|
||||
|
||||
Этот скрипт позволяет разрезать изображение на части заданного размера и сохранить их в указанной папке. Скрипт использует библиотеку `PIL` из `Pillow` для обработки изображений и `argparse` для обработки аргументов командной строки.
|
||||
|
||||
## Описание работы скрипта
|
||||
|
||||
1. Скрипт открывает изображение по указанному пути.
|
||||
2. Разбивает изображение на части заданного размера (ширина и высота).
|
||||
3. Сохраняет полученные части как отдельные файлы PNG в указанной папке.
|
||||
|
||||
## Требования
|
||||
|
||||
- Установите библиотеку Pillow, если она ещё не установлена:
|
||||
|
||||
```
|
||||
pip install pillow
|
||||
```
|
||||
|
||||
## Использование
|
||||
|
||||
Для запуска скрипта используйте командную строку и укажите следующие параметры:
|
||||
|
||||
```bash
|
||||
python script.py <image_path> <output_folder> <part_width> <part_height>
|
||||
```
|
||||
|
||||
### Параметры
|
||||
|
||||
- `<image_path>`: Путь к изображению (формат PNG), которое вы хотите разрезать.
|
||||
- `<output_folder>`: Папка, в которой будут сохранены части изображения.
|
||||
- `<part_width>`: Ширина каждой части (в пикселях).
|
||||
- `<part_height>`: Высота каждой части (в пикселях).
|
||||
|
||||
### Пример
|
||||
|
||||
```bash
|
||||
python split_image.py image.png output_folder 100 100
|
||||
```
|
||||
|
||||
Этот пример разрежет изображение `image.png` на части размером 100x100 пикселей и сохранит их в папку `output_folder`.
|
||||
|
||||
## Как работает скрипт
|
||||
|
||||
1. Скрипт открывает изображение, используя библиотеку `PIL`.
|
||||
2. Затем вычисляется, сколько частей по ширине и высоте будет получено, исходя из размеров исходного изображения и указанных параметров.
|
||||
3. Для каждой части вычисляются координаты обрезки, и изображение сохраняется в указанной папке с именем `part_X_Y.png`, где X и Y — это индексы части по горизонтали и вертикали.
|
||||
4. Скрипт уведомит о завершении операции.
|
||||
|
||||
## Пример вывода
|
||||
|
||||
```
|
||||
Изображение успешно разрезано на части размером 100x100 и сохранено в "output_folder".
|
||||
```
|
||||
|
||||
## Заметки
|
||||
|
||||
- Скрипт автоматически создаст папку для сохранения частей, если она не существует.
|
||||
- Последние части изображения могут быть немного меньше указанного размера, если изображение не делится на равные части по обеим осям.
|
||||
69
lvgl/make_image_from_file.md
Normal file
69
lvgl/make_image_from_file.md
Normal file
@@ -0,0 +1,69 @@
|
||||
# Руководство по использованию скрипта для создания изображения из бинарных данных
|
||||
|
||||
Этот скрипт позволяет извлечь байты, представленные в виде шестнадцатеричных значений, из текстового файла, сохранить их в бинарный файл и затем создать изображение в формате PNG на основе этих байтов. Используются библиотеки `binascii` и `PIL` (Pillow).
|
||||
|
||||
## Установка зависимостей
|
||||
|
||||
Для работы скрипта необходимо установить библиотеку `Pillow`. Для этого выполните команду:
|
||||
|
||||
```bash
|
||||
pip install Pillow
|
||||
```
|
||||
|
||||
## Описание функций
|
||||
|
||||
### `extract_bytes(input_file)`
|
||||
|
||||
- Извлекает байты, представленные в виде шестнадцатеричных значений, из текстового файла.
|
||||
- Преобразует их в бинарный формат и сохраняет в новый файл с суффиксом `_output.bin`.
|
||||
- Принимает на вход путь к текстовому файлу и возвращает путь к созданному бинарному файлу.
|
||||
|
||||
### `create_image_from_bytes(byte_file, image_file, width, height)`
|
||||
|
||||
- Читает байты из бинарного файла.
|
||||
- Меняет местами каналы R и B (преобразует из формата BGRA в RGBA).
|
||||
- Создает изображение и сохраняет его в формате PNG.
|
||||
- Принимает на вход путь к бинарному файлу, имя выходного изображения и размеры изображения (ширину и высоту).
|
||||
|
||||
## Как использовать
|
||||
|
||||
1. **Подготовьте текстовый файл**, в котором содержатся шестнадцатеричные данные, начинающиеся с '0x'. Например:
|
||||
|
||||
```
|
||||
0x89 0x50 0x4E 0x47 0x0D 0x0A 0x1A 0x0A ...
|
||||
```
|
||||
|
||||
2. **Запустите скрипт** с параметрами:
|
||||
- Путь к входному текстовому файлу
|
||||
- Ширина изображения
|
||||
- Высота изображения
|
||||
|
||||
Пример команды:
|
||||
|
||||
```bash
|
||||
python script.py input.txt 100 100
|
||||
```
|
||||
|
||||
3. **Скрипт выполнит два шага**:
|
||||
- Извлечет байты из текстового файла и сохранит их в бинарный файл с именем, основанным на имени входного файла.
|
||||
- Создаст изображение на основе извлеченных байтов и сохранит его в формате PNG.
|
||||
|
||||
## Пример работы
|
||||
|
||||
1. У вас есть текстовый файл `input.txt` с данными, начинающимися с '0x'.
|
||||
2. Запускаете скрипт:
|
||||
|
||||
```bash
|
||||
python script.py input.txt 100 100
|
||||
```
|
||||
|
||||
3. Скрипт:
|
||||
- Извлечет байты из `input.txt` и создаст файл `input_output.bin`.
|
||||
- Преобразует байты в изображение и сохранит его как `input.png`.
|
||||
|
||||
После выполнения скрипта, вы получите изображение `input.png`, которое будет создано на основе бинарных данных.
|
||||
|
||||
## Примечания
|
||||
|
||||
- Размеры изображения (ширина и высота) должны соответствовать количеству байтов в бинарном файле. Убедитесь, что количество пикселей (ширина * высота) соответствует размеру данных.
|
||||
- Скрипт предполагает, что данные представлены в формате BGRA (когда каналы R и B перепутаны), и выполняет их корректировку.
|
||||
66
lvgl/parse_c_files_from_dir.md
Normal file
66
lvgl/parse_c_files_from_dir.md
Normal file
@@ -0,0 +1,66 @@
|
||||
# Руководство по использованию скрипта для извлечения массивов байт из C-файлов
|
||||
|
||||
Этот скрипт предназначен для извлечения массивов байт из C-файлов, начиная с участка кода `#if LV_COLOR_DEPTH == 32` и заканчивая `#endif`, исключая комментарии и строки `#if` и `#endif`. Он также извлекает размеры изображения (ширину и высоту) из C-файла и сохраняет массив байт в отдельный текстовый файл. Для каждого файла с изображением скрипт запускает внешний скрипт для дальнейшей обработки изображения.
|
||||
|
||||
## Описание функций
|
||||
|
||||
### `extract_byte_array_from_c_file(file_path)`
|
||||
|
||||
Извлекает массив байт из C-файла, находящегося по пути `file_path`. Ищет участок кода между `#if LV_COLOR_DEPTH == 32` и `#endif`, исключая комментарии и строки `#if` и `#endif`.
|
||||
|
||||
**Параметры**:
|
||||
|
||||
- `file_path`: Путь к C-файлу.
|
||||
|
||||
**Возвращает**:
|
||||
|
||||
- Строку с массивом байт или `None`, если участок не найден.
|
||||
|
||||
### `extract_image_dimensions(file_path)`
|
||||
|
||||
Извлекает размеры изображения (ширину и высоту) из C-файла.
|
||||
|
||||
**Параметры**:
|
||||
|
||||
- `file_path`: Путь к C-файлу.
|
||||
|
||||
**Возвращает**:
|
||||
|
||||
- Кортеж с шириной и высотой изображения или `(None, None)`, если размеры не найдены.
|
||||
|
||||
### `process_directory(directory_path)`
|
||||
|
||||
Обрабатывает все C-файлы в указанной директории. Для каждого C-файла извлекается массив байт и сохраняется в текстовый файл с тем же именем. Также извлекаются размеры изображения и запускается внешний скрипт для обработки изображения.
|
||||
|
||||
**Параметры**:
|
||||
|
||||
- `directory_path`: Путь к директории, содержащей C-файлы.
|
||||
|
||||
### `main()`
|
||||
|
||||
Основная функция, которая обрабатывает аргументы командной строки и запускает процесс обработки файлов в указанной директории.
|
||||
|
||||
## Использование
|
||||
|
||||
1. Скачайте или скопируйте скрипт на ваш компьютер.
|
||||
2. Установите необходимые библиотеки, если они еще не установлены:
|
||||
|
||||
```bash
|
||||
pip install argparse
|
||||
```
|
||||
|
||||
3. Запустите скрипт из командной строки, передав путь к директории с C-файлами:
|
||||
|
||||
```bash
|
||||
python script.py /path/to/directory
|
||||
```
|
||||
|
||||
Замените `/path/to/directory` на путь к директории, содержащей C-файлы.
|
||||
|
||||
## Пример
|
||||
|
||||
```bash
|
||||
python script.py ./c_files
|
||||
```
|
||||
|
||||
Этот скрипт обработает все C-файлы в директории `./c_files`, извлечет массивы байт и размеры изображений, а затем запустит внешний скрипт для дальнейшей обработки изображений.
|
||||
48
readme.md
48
readme.md
@@ -1,51 +1,3 @@
|
||||
# Скрипты
|
||||
|
||||
В этой директории находятся полезные для проекта скрипты позволяющие автоматизировать процесс разработки.
|
||||
|
||||
## Создать картинку из массива байт
|
||||
|
||||
Скрипт принимает 3 обязательных аргумента:
|
||||
|
||||
- Путь к текстовому документу в котором находиться перечисление байтов
|
||||
- Ширина выходной изображения
|
||||
- Длина выходного изображения
|
||||
|
||||
Главной особенностью скрипта перевод **BGRA** в **RGBA** и игнорирование запятых.
|
||||
|
||||
## Разобрать *.c файлы на изображения
|
||||
|
||||
- Скрипт принимает путь к директории с исходными файлами проекта на языке программирования Си и конвертирует при помощи скрипта `make_image_from_file.py` массив байт в изображение.
|
||||
- На текущий момент скрипт поддерживает только исходные файлы которые были созданы при помощи **COLOR_ALPHA_TRUE_COLOR** цветового формата.
|
||||
- Самостоятельно извлекает из структуры размеры выходного изображения и передает их скрипту для сборки.
|
||||
|
||||
## Создать карту изображений из директории в формате Excel файла
|
||||
|
||||
Скрипт принимает 2 обязательных параметра:
|
||||
|
||||
- Путь к целевому каталогу с изображениями
|
||||
- Путь к выходному файлу в формате *.xlsx или*.xls в котором будут находиться:
|
||||
- Название изображения
|
||||
- Размер изображения
|
||||
- Эскиз изображения
|
||||
|
||||
Работает на текущий момент с популярными форматами: `'.png', '.jpg', '.jpeg', '.gif', '.bmp'`.
|
||||
|
||||
## Разделить картинку на части
|
||||
|
||||
Скрипт `split_image.py` позволяет легко разделить изображение на части одинаковой ширины и длины в формате `.png`.
|
||||
|
||||
Принимает 4 аргумента:
|
||||
|
||||
- Путь к исходному изображению в формате `.png`
|
||||
- Путь к каталогу, в котором будут размещены фрагменты `.png`
|
||||
- Ширина
|
||||
- Длина
|
||||
|
||||
## Обрезка изображения по объекту
|
||||
|
||||
Скрипт `crop_to_object.py` предназначен для обрезки PNG изображений до размеров видимого объекта. Он удаляет прозрачные области изображения и сохраняет результат в указанной папке. Если выходная папка не указана, скрипт перезаписывает оригинальные файлы.
|
||||
|
||||
Скрипт принимает два аргумента командной строки:
|
||||
|
||||
- Папка входных изображений (обязательный аргумент) — путь к папке, содержащей PNG изображения, которые вы хотите обработать.
|
||||
- Папка выходных изображений (необязательный аргумент) — путь к папке, в которую будут сохранены обработанные изображения. Если этот аргумент не указан, скрипт будет перезаписывать оригинальные файлы в папке входных изображений.
|
||||
|
||||
Reference in New Issue
Block a user