This media is not supported in your browser
VIEW IN TELEGRAM
Код для создания таймлапса из видео на Python
Для создания таймлапса из видео, в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для создания таймлапса из видео, в коде используется библиотека
OpenCV
.pip install opencv-python
import cv2
# Путь к исходному видео-файлу
video_path = 'video.mp4'
# Путь к выходному видео-файлу
output_video = 'timelapse_video.avi'
# Количество кадров, которые нужно пропускать, чтобы создать таймлапс
frame_skip = 10
# Открываем видеофайл для чтения
cap = cv2.VideoCapture(video_path)
# Задаем параметры для записи выходного видео (кодек XVID, 20 кадров в секунду, размеры кадров из исходного видео)
fourcc = cv2.VideoWriter_fourcc(*'XVID')
out = cv2.VideoWriter(output_video, fourcc, 20.0, (int(cap.get(cv2.CAP_PROP_FRAME_WIDTH)), int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))))
frame_count = 0 # Инициализируем счетчик кадров
# Читаем и обрабатываем кадры из видео, пока оно открыто
while cap.isOpened():
# Читаем следующий кадр из видео
ret, frame = cap.read()
# Если кадры закончились, выходим из цикла
if not ret:
break
# Если номер кадра кратен frame_skip, записываем кадр в выходное видео
if frame_count % frame_skip == 0:
out.write(frame)
# Увеличиваем счетчик кадров
frame_count += 1
# Освобождаем ресурсы после завершения работы
cap.release() # Закрываем исходное видео
out.release() # Закрываем выходное видео
cv2.destroyAllWindows() # Закрываем все окна OpenCV
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍6❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Kornia
предоставляет множество инструментов и функций для обработки изображений и работы с компьютерным зрением. Использует PyTorch
в качестве backend для ускорения операций.Особенно полезна для задач, связанных с глубоким обучением, поскольку она позволяет легко интегрировать операции с изображениями в
PyTorch
модели.Основные возможности библиотеки:
PyTorch
, что позволяет применять операции компьютерного зрения непосредственно в моделях глубокого обучения.pip install kornia
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤🔥3
Код для генерации ASCII-арта из изображения на Python
Для работы с изображением в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для работы с изображением в коде используется библиотека
Pillow
.pip install Pillow
from PIL import Image
def image_to_ascii(image_path, output_path, width=100):
# Открываем изображение по указанному пути
img = Image.open(image_path)
# Конвертируем изображение в градации серого ('L' - режим grayscale)
img = img.convert('L')
# Вычисляем соотношение сторон изображения
aspect_ratio = img.height / img.width
# Определяем новую высоту, сохраняя соотношение сторон
new_height = int(aspect_ratio * width * 0.55)
# Изменяем размер изображения согласно новым параметрам
img = img.resize((width, new_height))
# Получаем пиксельные данные изображения
pixels = img.getdata()
# Определяем набор символов для ASCII
chars = ["@", "#", "S", "%", "?", "*", "+", ";", ":", ",", "."]
# Преобразуем пиксели в ASCII символы
ascii_str = "".join([chars[pixel // 25] for pixel in pixels])
# Получаем длину строки ASCII
ascii_str_len = len(ascii_str)
# Формируем строку ASCII изображения с нужной шириной
ascii_img = "\n".join([ascii_str[index: index + width] for index in range(0, ascii_str_len, width)])
# Открываем файл в режиме для записи
with open(output_path, "w") as f:
# Записываем ASCII изображение в файл
f.write(ascii_img)
image_to_ascii('image.png', 'output.txt')
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥9👍5🔥2
Игра «Камень, ножницы, бумага» на Python
В данной статье напишем код игры «Камень, ножницы, бумага» на Python.
➡️ Справочник Программиста. Подписаться
В данной статье напишем код игры «Камень, ножницы, бумага» на Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥5❤🔥2
В данном shorts напишем код для обращения к нейросетям на Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤🔥3🎉1
Справочник Программиста
Код для бесплатного обращения к нейросетям на Python
➡️ Установка необходимой библиотеки:
➡️ Справочник Программиста. Подписаться
pip install g4f
from g4f.client import Client
client = Client()
response = client.chat.completions.create(
model="gpt-4o",
messages=[{
"role": "user",
"content": "Напиши код калькулятора на Python"}],
)
print(response.choices[0].message.content)
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥18🔥5👍4🤨2🤔1
Библиотека
diskcache
предназначена для высокопроизводительного кэширования на диске.Она сочетает преимущества in-memory кэширования и долговечность дискового хранилища, что делает её особенно полезной для больших данных, которые не помещаются в оперативной памяти, или для долгоживущих кэшей, которые должны сохраняться между запусками приложения.
Основные особенности библиотеки:
pip install diskcache
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥5🔥3🤨1
This media is not supported in your browser
VIEW IN TELEGRAM
Код для определения цвета при клике на определенную область изображения на Python
Для определения цвета при клике на определенную область изображения в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для определения цвета при клике на определенную область изображения в коде используется библиотека
OpenCV
.pip install opencv-python
import cv2
# Функция обработки события клика мыши
def get_color(event, x, y, flags, param):
# Если нажата левая кнопка мыши
if event == cv2.EVENT_LBUTTONDOWN:
# Получаем значения каналов цвета (BGR) в точке клика
b, g, r = img[y, x]
# Выводим значения цвета в формате RGB
print(f"RGB: ({r}, {g}, {b})")
# Загрузка изображения
img = cv2.imread('your_image.jpg')
# Создание окна для отображения изображения
cv2.namedWindow('image')
# Установка функции обработки событий мыши для окна
cv2.setMouseCallback('image', get_color)
while True:
# Отображение изображения в окне
cv2.imshow('image', img)
# Ожидание нажатия клавиши с задержкой 20 мс
if cv2.waitKey(20) & 0xFF == 27: # Если нажата клавиша ESC (код 27), то выходим из цикла
break
# Закрытие всех окон OpenCV
cv2.destroyAllWindows()
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍4❤🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
PySnooper
предназначена для отладки кода, и позволяет легко отслеживать выполнение программ и выводить информацию о переменных и их значениях в процессе работы программы.Основные возможности библиотеки:
@pysnooper.snoop()
к функции или использовать контекстный менеджер with pysnooper.snoop():
.pip install PySnooper
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥3🔥3
Библиотека
InsightFace
предназначена для распознавания лиц и их анализа на основе глубокого обучения.Предоставляет набор инструментов и моделей для различных задач, связанных с лицами, таких как обнаружение лиц, выравнивание лиц, верификация лиц, распознавание лиц и сегментация лиц. Широко используется в научных исследованиях, а также в коммерческих приложениях.
Основные возможности библиотеки:
pip install insightface
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥3❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для мониторинга загруженности процессора в реальном времени на Python
Для мониторинга загруженности процессора в коде используется модуль
Функция
➡️ Установка модуля:
➡️ Справочник Программиста. Подписаться
Для мониторинга загруженности процессора в коде используется модуль
psutil
.Функция
cpu_percent()
из модуля psutil
предоставляет информацию о загрузке процессора в процентах.pip install
psutil
import psutil
import time
# Мониторинг загруженности процессора
try:
while True:
print(f"Загруженность процессора: {psutil.cpu_percent(interval=1)}%")
time.sleep(1)
except KeyboardInterrupt:
print("Остановка мониторинга.")
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥3🔥3
Функция help() в Python
В данной статье рассмотрим, как работает функция
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работает функция
help()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥2
Библиотека
Docxtpl
используется для генерации и модификации документов в формате .docx на основе шаблонов.Она построена поверх библиотеки
python-docx
и предоставляет удобные инструменты для создания документов с динамическим содержимым, заменяя переменные внутри шаблонов на реальные данные.Основные возможности библиотеки:
pip install docxtpl
Пример кода:
from docxtpl import DocxTemplate
# Загрузка шаблона
doc = DocxTemplate("pattern.docx")
# Данные для замены
context = {
'name': 'Иван Иванович',
'date': '12.06.2024',
'items': [
{'name': 'Товар 1', 'price': '100 руб.'},
{'name': 'Товар 2', 'price': '200 руб.'},
]
}
# Рендеринг документа с данными
doc.render(context)
# Сохранение документа
doc.save("document.docx")
На картинках показан .docx-шаблон и результат выполнения кода.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍4❤🔥2
В данном shorts напишем код для генерации фейковых данных о человеке на Python (не Faker).
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4👍3🔥2
Справочник Программиста
Примеров кода довольно много, поэтому придётся разделить на несколько постов.
pip install mimesis
Генерация случайных персональных данных
from mimesis import Person
from mimesis.enums import Gender
from mimesis.locales import Locale
person = Person(Locale.RU)
print("Имя:", person.name())
print("Фамилия:", person.surname())
print("Пол:", person.gender())
print("Дата рождения:", person.birthdate())
print("Почта:", person.email())
print("Телефон:", person.telephone())
# Генерация данных с указанием пола
print("Мужское имя:", person.name(gender=Gender.MALE))
Генерация случайного адреса
from mimesis import Address
address = Address(locale="ru")
# Генерация случайных данных
print("Страна:", address.country())
print("Город:", address.city())
print("Улица:", address.street_name())
print("Дом:", address.street_number())
print("Почтовый индекс:", address.postal_code())
Генерация случайного текста
from mimesis import Text
text = Text(locale="ru")
print("Случайное слово:", text.word())
print("Случайное предложение:", text.sentence())
print("Случайный абзац:", text.text(quantity=1))
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4❤🔥3
Библиотека
Tesserocr
предоставляет интерфейс для работы с библиотекой OCR (распознавание текста) Tesseract
.Она позволяет легко интегрировать возможности
Tesseract
в Python-приложения, предоставляя удобный интерфейс для работы с изображениями и распознавания текста.Основные возможности библиотеки:
Tesseract
.PIL
(Python Imaging Library) или напрямую с numpy
массивами, что позволяет легко подготавливать изображения для распознавания.Tesseract
: Позволяет настраивать различные параметры Tesseract
, такие как язык распознавания, варианты предобработки изображений и другие параметры конфигурации.pip install tesserocr
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥3🔥3
Справочник Программиста
pip install mimesis
Генерация случайных платёжных данных
from mimesis import Payment
payment = Payment()
print("Номер кредитной карты:", payment.credit_card_number())
print("Дата окончания срока действия кредитной карты:", payment.credit_card_expiration_date())
print("CVV:", payment.cvv())
print("Сеть кредитной карты:", payment.credit_card_network())
print("Адрес Ethereum:", payment.ethereum_address())
print("PayPal:", payment.paypal())
print("Адрес Bitcoin:", payment.bitcoin_address())
print("Владелец кредитной карты:", payment.credit_card_owner())
print("CID:", payment.cid())
Генерация случайных временных данных
from mimesis import Datetime
datetime = Datetime()
print("Случайная дата:", datetime.date())
print("Случайное время:", datetime.time())
print("Случайный месяц:", datetime.month())
print("Случайный год:", datetime.year())
print("Случайный день недели:", datetime.day_of_week())
Генерация случайных данных по разработке
from mimesis import Development
development = Development()
print("Стадия разработки:", development.stage())
print("Характеристика надёжности ПО (ility):", development.ility())
print("Лицензия ПО:", development.software_license())
print("Версия с использованием календарной версии (calver):", development.calver())
print("Версия ПО:", development.version())
print("Язык программирования:", development.programming_language())
Генерация случайных общих данных
from mimesis import Generic
generic = Generic()
print("Случайное имя:", generic.person.name())
print("Случайный адрес:", generic.address.address())
print("Случайный текст:", generic.text.text())
print("Случайный файл:", generic.file.file_name())
print("Случайная дата:", generic.datetime.date())
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤🔥3🔥3😁1
Библиотека Dramatiq в Python
Библиотека
Она позволяет выполнять долгие и ресурсоемкие операции в фоновом режиме, освобождая основной поток выполнения для более важных задач.
Основные особенности библиотеки:
🔵 Асинхронность: Поддерживает асинхронное выполнение задач, что позволяет обрабатывать множество задач параллельно.
🔵 Простота использования: Имеет интуитивно понятный API, что делает ее доступной для разработчиков любого уровня.
🔵 Поддержка брокеров сообщений: Поддерживает несколько брокеров сообщений, включая
🔵 Расширяемость: Благодаря своей модульной архитектуре,
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Dramatiq
- это асинхронная система очередей задач (task queue) для разработки и управления фоновыми задачами в приложениях.Она позволяет выполнять долгие и ресурсоемкие операции в фоновом режиме, освобождая основной поток выполнения для более важных задач.
Основные особенности библиотеки:
RabbitMQ
и Redis
, для обмена сообщениями между компонентами системы.Dramatiq
легко расширяется с помощью плагинов и middleware.pip install dramatiq
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥3