PPTX DOCX XLSX PDF ODP
Aspose.Imaging  для Python
APNG

Використовуйте Python для бінаризації зображень APNG

Створюйте додатки Python для бінарного переведення зображень і фотографій у APNG за допомогою серверних API

Як перевести в двійковий формат APNG зображення та фотографії за допомогою Python

Поява кольорової фотографії ознаменувала кардинальний зсув у фотосфері. Тим не менш, привабливість класичного чорно-білого образу все ще зберігається. Незважаючи на поширеність кольорових камер, багато людей все ще вирішують перетворювати свої фотографії на чорно-білі. Це перетворення зазвичай досягається через процес бінаризації, замінюючи кожен піксель двійковим значенням: «0» для білого і «1» для чорного. Чорно-білі зображення часто використовуються не лише для художніх цілей, але знаходять практичне застосування в таких сценаріях, як друк ілюстрацій у таких виданнях, як книги та газети. У графічній бібліотеці Python ви можете встановити порогове значення яскравості пікселів. Пікселі нижче цього порогу приймають чорний колір, тоді як пікселі вище приймають білий колір. Також доступна техніка адаптивної бінаризації, яка враховує навколишні значення пікселів для створення плавних переходів між межами кольорів у результуючому чорно-білому зображенні. Для бінаризації файлів APNG ми будемо використовувати Aspose.Imaging for Python via .NET API, який є багатофункціональним, потужним і простим у використанні API для обробки зображень і перетворення для платформи Python. Ви можете встановити його за допомогою наступної команди вашої системної консолi.

Системна консоль

>> pip install aspose-imaging-python-net

Кроки для бінаризації APNG через Python

Вам потрібен aspose-imaging-python-net , щоб спробувати наступний робочий процес у вашому власному середовищі.

  • Завантажувати файли APNG за допомогою методу Image.Load
  • Бінаризувати зображення;
  • Збережіть стиснене зображення на диск у форматі, який підтримує Aspose.Imaging

Системні вимоги

Aspose.Imaging для Python підтримується в усіх основних операційних системах. Просто переконайтеся, що у вас є такі передумови.

  • Microsoft Windows / Linux з .NET Core Runtime. — Менеджер пакетів Python і PyPi.
 

Бінаризувати зображення APNG - Python

from aspose.imaging import *
from aspose.imaging.fileformats.bmp import *
from aspose.imaging.fileformats.dicom import *
from aspose.imaging.fileformats.emf import *
from aspose.imaging.fileformats.jpeg import *
from aspose.imaging.fileformats.jpeg2000 import *
from aspose.imaging.fileformats.png import *
from aspose.imaging.fileformats.psd import *
from aspose.imaging.fileformats.tiff.enums import *
from aspose.imaging.imagefilters.filteroptions import *
from aspose.imaging.imageoptions import *
from aspose.imaging.masking import *
from aspose.imaging.masking.options import *
from aspose.imaging.masking.result import *
from aspose.imaging.sources import *
from aspose.pycore import as_of, is_assignable
import os
if 'TEMPLATE_DIR' in os.environ:
templates_folder = os.environ['TEMPLATE_DIR']
else:
templates_folder = r"C:\Users\USER\Downloads\templates"
delete_output = 'SAVE_OUTPUT' not in os.environ
def binarize_otsu():
filter_images(lambda image: image.binarize_otsu(), "binarizeotsu")
def binarize_bradley():
filter_images(lambda image: image.binarize_bradley(0.5), "binarizebradley")
def binarize_fixed():
filter_images(lambda image: image.binarize_fixed(70), "binarizefixed")
def filter_images(do_filter, filter_name):
obj_init = []
obj_init.append("jpg")
obj_init.append("png")
obj_init.append("bmp")
obj_init.append("apng")
obj_init.append("dicom")
obj_init.append("jp2")
obj_init.append("j2k")
obj_init.append("tga")
obj_init.append("webp")
obj_init.append("tif")
obj_init.append("gif")
obj_init.append("ico")
raster_formats = obj_init
obj_init2 = []
obj_init2.append("svg")
obj_init2.append("otg")
obj_init2.append("odg")
obj_init2.append("eps")
obj_init2.append("wmf")
obj_init2.append("emf")
obj_init2.append("wmz")
obj_init2.append("emz")
obj_init2.append("cmx")
obj_init2.append("cdr")
vector_formats = obj_init2
all_formats = []
all_formats.extend(raster_formats)
all_formats.extend(vector_formats)
for format_ext in all_formats:
input_file = os.path.join(templates_folder, f"template.{format_ext}")
if not os.path.exists(input_file):
continue
is_vector_format = format_ext in vector_formats
if is_vector_format:
input_file = rasterize_vector_image(format_ext, input_file)
output_file = os.path.join(templates_folder, f"{filter_name}_{format_ext}.png")
print(format_ext)
# explicit type casting from Image to RasterImage
with as_of(Image.load(input_file), RasterImage) as image:
do_filter(image)
multi_page = None
# if image implements an IMultipageImage interface
if is_assignable(image, IMultipageImage):
multi_page = as_of(image, IMultipageImage)
if multi_page is not None and multi_page.page_count > 1:
# for loop
for_first_step = True
page_index = 0
for page in multi_page.pages:
file_name = f"{filter_name}_page{page_index}_{format_ext}.png"
page.save(templates_folder + file_name, PngOptions())
os.remove(templates_folder + file_name)
page_index += 1
else:
image.save(output_file, PngOptions())
delete_file(output_file)
if is_vector_format:
delete_file(input_file)
def rasterize_vector_image(format_ext, input_file):
output_file = os.path.join(templates_folder, f"rasterized.{format_ext}.png")
with Image.load(input_file) as image:
image.save(output_file, PngOptions())
return output_file
def delete_file(file):
if delete_output:
os.remove(file)
# Run filters
binarize_fixed()
# binarize_bradley()
# binarize_otsu()
 
  • Про API Aspose.Imaging для Python

    API Aspose.Imaging — це рішення для обробки зображень для створення, модифікації, малювання або конвертації зображень (фотографій) у програмах. Він пропонує: кросплатформну обробку зображень, включаючи, але не обмежуючись, перетворення між різними форматами зображень (включно з уніфікованою обробкою багатосторінкових або багатокадрових зображень), такі модифікації, як малювання, робота з графічними примітивами, перетворення (зміна розміру, обрізання, перевертання та обертання). , бінаризація, відтінки сірого, коригування), розширені функції обробки зображення (фільтрування, згладжування, маскування, виправлення) і стратегії оптимізації пам’яті. Це окрема бібліотека, яка не залежить від програмного забезпечення для роботи із зображеннями. Можна легко додати високоефективні функції перетворення зображень за допомогою власних API у проекти. Це 100% приватні локальні API, а зображення обробляються на ваших серверах.

    Бінаризуйте APNG через онлайн-додаток

    Бінаризуйте APNG зображення, відвідавши наш веб-сайт Live Demos . Жива демонстрація має такі переваги

      Не потрібно нічого завантажувати чи налаштовувати
      Не потрібно писати код
      Просто завантажте свої файли APNG і натисніть кнопку Бінаризувати зараз.
      Миттєво отримайте посилання для завантаження отриманого файлу

    APNG Що таке APNG формат

    Файл із розширенням .apng (Animated Portable Network Graphic) — це растровий графічний формат і є неофіційним розширенням Portable Network Graphic (PNG). Він складається з кількох кадрів (кожен із зображень PNG), які представляють послідовність анімації. Це дає візуалізацію, подібну до файлу GIF. Файли APNG підтримують 24-бітні зображення та 8-бітну прозорість. APNG має зворотну сумісність із файлами GIF без анімації. Файли APNG використовують те саме розширення .png і можуть відкриватися такими програмами, як Mozilla Firefox, Chrome із підтримкою APNG, програмами iMessage для iOS 10.

    Детальніше

    Інші підтримувані формати для бінаризації

    Використовуючи Python, можна легко Бінаризувати різні формати.

    BMP (Растрове зображення)
    ICO (Значок Windows)
    JPG (Об’єднана експертна група з фотографій)
    JPEG (Об’єднана експертна група з фотографій)
    DIB (Незалежне від пристрою растрове зображення)
    DICOM (Цифрові зображення та комунікації)
    DJVU (Графічний формат)
    DNG (Зображення цифрової камери)
    EMF (Розширений формат метафайлу)
    EMZ (Windows Compressed Enhanced Metafile)
    GIF (Графічний формат обміну)
    JP2 (JPEG 2000)
    J2K (Wavelet Compressed Image)
    PNG (Портативна мережева графіка)
    TIFF (Формат зображення з тегами)
    TIF (Формат зображення з тегами)
    WEBP (Растрове веб-зображення)
    WMF (Метафайл Microsoft Windows)
    WMZ (Стиснена оболонка Windows Media Player)
    TGA (Targa Graphic)
    SVG (Масштабована векторна графіка)
    EPS (Мова інкапсульованого PostScript)
    CDR (Векторний малюнок зображення)
    CMX (Corel Exchange Image)
    OTG (Стандарт OpenDocument)
    ODG (Формат Apache OpenOffice Draw)