ग्रेस्केल JP2 छवियों के लिए Python का उपयोग करें
सर्वर एपीआई के माध्यम से ग्रेस्केल JP2 छवियों और तस्वीरों के लिए Python ऐप्स बनाएं
Python के साथ JP2 छवियों और फ़ोटो को ग्रेस्केल कैसे करें
चमकीले रंग आमतौर पर शानदार तस्वीरों के सार के रूप में जुड़े होते हैं। लेकिन क्या होगा यदि रंगीन मुद्रण की संभावना कोई विकल्प नहीं है? ऐसे परिदृश्यों में, रंगीन फ़ोटो को ग्रेस्केल में परिवर्तित करने की आवश्यकता उत्पन्न होती है, और आश्चर्यजनक रूप से, यह आवश्यक रूप से इसके प्रभाव से समझौता नहीं करता है। अक्सर, पूर्ण रंग से ग्रेस्केल में रूपांतरण अपने आप में एक कलात्मक तकनीक है, जो आपके डिज़ाइन के आकर्षण को बढ़ाती है। यह प्रक्रिया, रंग की जानकारी के उन्मूलन के साथ मिलकर, आपके सहयोगी के रूप में कार्य कर सकती है, छवि विवरण को बढ़ा सकती है, सतहों की बनावट को सामने ला सकती है, और प्रकाश और छाया के बीच एक दृश्य सिम्फनी का आयोजन कर सकती है - इस प्रकार एक विशिष्ट दृश्य प्रभाव तैयार किया जा सकता है। JP2 छवियों को ग्रेस्केल में बदलने के लिए, हम इसका उपयोग करेंगे Aspose.Imaging for Python via .NET एपीआई जो कि पायथन प्लेटफॉर्म के लिए एक सुविधा संपन्न, शक्तिशाली और उपयोग में आसान छवि हेरफेर और रूपांतरण एपीआई है। आप इसे अपने सिस्टम कमांड से निम्नलिखित कमांड का उपयोग करके इंस्टॉल कर सकते हैं।
द सिस्टम कमांड लाइन
>> pip install aspose-imaging-python-net
Python के माध्यम से ग्रेस्केल JP2s के चरण
आपको aspose-imaging-python-net की जरूरत है ताकि आप अपने खुद के माहौल में नीचे दिए गए वर्कफ़्लो को आज़मा सकें।
- लोड JP2 छवि के साथ फ़ाइलें। लोड विधि
- ग्रेस्केल छवियां;
- Aspose द्वारा समर्थित डिस्क में संपीड़ित छवि को सहेजें। इमेजिंग प्रारूप
सिस्टम आवश्यकताएं
Aspose.Imaging for Python सभी प्रमुख ऑपरेटिंग सिस्टम पर समर्थित है। बस सुनिश्चित करें कि आपके पास निम्नलिखित पूर्वापेक्षाएँ हैं।
- माइक्रोसॉफ्ट विंडोज/लिनक्स .NET कोर रनटाइम के साथ।
- पायथन और PyPi पैकेज मैनेजर।
ग्रेस्केल JP2 इमेज - Python
from aspose.imaging import RasterImage, Image, IMultipageImage | |
from aspose.imaging.imageoptions import PngOptions | |
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 delete_file(file): | |
if delete_output: | |
os.remove(file) | |
def grayscale_images(): | |
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("tiff") | |
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 = 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"grayscale_{format_ext}.png") | |
print(f"Processing {format_ext}") | |
# explicit type casting from Image to RasterImage | |
with as_of(Image.load(input_file), RasterImage) as image: | |
# Additional code examples can be found at | |
# https://apireference.aspose.com/imaging/python-net/aspose.imaging/rasterimage/methods/grayscale | |
image.grayscale() | |
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: | |
page_index = 0 | |
for page in multi_page.pages: | |
file_name = f"grayscale_page{page_index}_{format_ext}.png" | |
page.save(templates_folder + file_name, PngOptions()) | |
delete_file(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 | |
grayscale_images() |
Aspose.Imaging for Python API . के बारे में
Aspose.Imaging API अनुप्रयोगों के भीतर छवियों (फ़ोटो) को बनाने, संशोधित करने, आकर्षित करने या परिवर्तित करने के लिए एक छवि प्रसंस्करण समाधान है। यह प्रदान करता है: क्रॉस-प्लेटफ़ॉर्म छवि प्रसंस्करण, जिसमें विभिन्न छवि प्रारूपों (समान बहु-पृष्ठ या बहु-फ़्रेम छवि प्रसंस्करण सहित) के बीच रूपांतरण शामिल हैं, लेकिन इन्हीं तक सीमित नहीं है, ड्राइंग जैसे संशोधन, ग्राफिक प्राइमेटिव के साथ काम करना, परिवर्तन (आकार बदलना, फसल करना, फ्लिप करना और घुमाना) , बिनाराइज़ेशन, ग्रेस्केल, एडजस्ट), उन्नत छवि हेरफेर सुविधाएँ (फ़िल्टरिंग, डिथरिंग, मास्किंग, डेस्क्यूइंग), और मेमोरी ऑप्टिमाइज़ेशन रणनीतियाँ। यह एक स्टैंडअलोन लाइब्रेरी है और इमेज ऑपरेशंस के लिए किसी सॉफ्टवेयर पर निर्भर नहीं है। परियोजनाओं के भीतर देशी एपीआई के साथ आसानी से उच्च-प्रदर्शन छवि रूपांतरण सुविधाएँ जोड़ सकते हैं। ये 100% निजी ऑन-प्रिमाइसेस एपीआई हैं और छवियों को आपके सर्वर पर संसाधित किया जाता है।ग्रेस्केल JP2ऑनलाइन ऐप के माध्यम से
हमारी लाइव डेमो वेबसाइट पर जाकर ग्रेस्केल JP2 दस्तावेज़। लाइव डेमो के निम्नलिखित लाभ हैं
JP2 क्या है JP2 फाइल का प्रारूप
JPEG 2000 (JP2) एक छवि कोडिंग प्रणाली और अत्याधुनिक छवि संपीड़न मानक है। वेवलेट तकनीक का उपयोग करके डिज़ाइन किया गया JPEG 2000 दोषरहित सामग्री को किसी भी गुणवत्ता में एक ही बार में कोडित कर सकता है। इसके अलावा, कोडिंग दक्षता में किसी भी पर्याप्त दंड के बिना, जेपीईजी 2000 में एक ही सामग्री को विभिन्न अन्य प्रस्तावों और गुणों में प्रभावशाली ढंग से एक्सेस और डीकोड करने की क्षमता है। JPEG 2000 में कोड स्ट्रीम काफी स्केलेबल है जिसमें रुचि के क्षेत्र हैं जो स्थानिक यादृच्छिक अभिगम की सुविधा प्रदान करते हैं। टेरापिक्सल में आयामों के साथ 16384 विविध घटकों तक, और सटीकता जो 38 बिट्स/नमूना के रूप में उच्च हो सकती है।
अधिक पढ़ेंअन्य समर्थित ग्रेस्केल प्रारूप
Python का उपयोग करके, कोई भी व्यक्ति विभिन्न स्वरूपों को आसानी से ग्रेस्केल कर सकता है, जिसमें शामिल हैं।