Java के माध्यम से TGAs को बिनराइज़ करें
सर्वर-साइड API का उपयोग करके TGA फ़ाइलों को बिनराइज़ करने के लिए अपने स्वयं के Java ऐप्स बनाएं।
Java का उपयोग करके TGA फ़ाइलों को बिनराइज़ कैसे करें
रंगीन फिल्म के आविष्कार ने फोटोग्राफी के क्षेत्र में एक महत्वपूर्ण मील का पत्थर साबित किया। हालाँकि, शास्त्रीय फोटोग्राफी स्वाभाविक रूप से काले और सफेद इमेजरी से जुड़ी हुई है। रंगों के पूरे स्पेक्ट्रम को कैप्चर करने के लिए कैमरों की व्यापक तकनीकी क्षमताओं के बावजूद, कई व्यक्ति मोनोक्रोम का विकल्प चुनते हैं, जिससे उनकी तस्वीरें काले और सफेद रंग में बदल जाती हैं। ऐसे उदाहरणों में, एक बाइनराइज़ेशन फ़ंक्शन काम में आता है, जो सभी पिक्सेल को बाइनरी मानों में परिवर्तित करता है: सफेद के लिए “0" और काले के लिए “1"। अन्य परिदृश्यों में, यह रूपांतरण कलात्मक विकल्पों से नहीं बल्कि व्यावहारिक विकल्पों से प्रेरित होता है, जैसे किताबों या समाचार पत्रों में छपाई के लिए काले और सफेद चित्र तैयार करना। Java ग्राफ़िक्स लाइब्रेरी का उपयोग करके, आप एक पिक्सेल चमक सीमा निर्दिष्ट कर सकते हैं। इस सीमा से नीचे चमक मान वाले पिक्सेल काले हो जाएंगे, जबकि इससे ऊपर वाले पिक्सेल सफेद हो जाएंगे। वैकल्पिक रूप से, आप एक अनुकूली बाइनराइज़ेशन विधि को नियोजित कर सकते हैं जो आसपास के क्षेत्र में पिक्सेल मानों पर विचार करती है। इस दृष्टिकोण के परिणामस्वरूप परिणामी काली और सफेद छवि में रंग सीमाओं के बीच सहज बदलाव होता है। TGA फ़ाइलों को बिनराइज़ करने के लिए, हम इसका उपयोग करेंगे Aspose.Imaging for Java API जो एक सुविधा संपन्न, शक्तिशाली और जावा प्लेटफॉर्म के लिए छवि हेरफेर और रूपांतरण एपीआई का उपयोग करने में आसान है। आप इसका नवीनतम संस्करण सीधे Maven से डाउनलोड कर सकते हैं और इसे अपने मावेन में इंस्टॉल कर सकते हैं -आधारित परियोजना pom.xml में निम्नलिखित विन्यास जोड़कर।
रिपॉजिटरी
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
निर्भरता
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-imaging</artifactId>
<version>version of aspose-imaging API</version>
<classifier>jdk16</classifier>
</dependency>
Java के माध्यम से TGAs को बिनराइज़ करने के चरण
अपने स्वयं के वातावरण में निम्नलिखित वर्कफ़्लो को आज़माने के लिए आपको aspose-imaging-version-jdk16.jar की आवश्यकता होगी।
- लोड TGA छवि के साथ फ़ाइलें। लोड विधि
- छवियों को बिनाराइज़ करें;
- Aspose द्वारा समर्थित डिस्क में संपीड़ित छवि को सहेजें। इमेजिंग प्रारूप
सिस्टम आवश्यकताएं
Aspose.Imaging for Java सभी प्रमुख ऑपरेटिंग सिस्टम पर समर्थित है। बस सुनिश्चित करें कि आपके पास निम्नलिखित पूर्वापेक्षाएँ हैं।
- JDK 1.6 या उच्चतर स्थापित है।
TGA छवियों को बिनराइज़ करें - Java
import com.aspose.imaging.IMultipageImage; | |
import com.aspose.imaging.Image; | |
import com.aspose.imaging.RasterImage; | |
import com.aspose.imaging.imageoptions.PngOptions; | |
import java.io.File; | |
import java.util.Arrays; | |
import java.util.LinkedList; | |
import java.util.List; | |
import java.util.function.Consumer; | |
binarizeFixed(); | |
public static void binarizeOtsu() | |
{ | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/RasterImage#binarizeOtsu-- | |
filterImages(RasterImage::binarizeOtsu, "binarizeotsu"); | |
} | |
public static void binarizeBradley() | |
{ | |
filterImages(image -> | |
{ | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/RasterImage#binarizeBradley-double- | |
image.binarizeBradley(0.5); | |
}, "binarizebradley"); | |
} | |
public static void binarizeFixed() | |
{ | |
filterImages(image -> | |
{ | |
// https://apireference.aspose.com/imaging/java/com.aspose.imaging/RasterImage#binarizeFixed-byte- | |
image.binarizeFixed((byte)70); | |
}, "binarizefixed"); | |
} | |
static String templatesFolder = "D:\\"; | |
public static void filterImages(Consumer<RasterImage> doFilter, String filterName) | |
{ | |
List<String> rasterFormats = Arrays.asList("jpg", "png", "bmp", "apng", "dicom", | |
"jp2", "j2k", "tga", "webp", "tif", "gif", "ico"); | |
List<String> vectorFormats = Arrays.asList("svg", "otg", "odg", "eps", "wmf", "emf", "wmz", "emz", "cmx", "cdr"); | |
List<String> allFormats = new LinkedList<>(rasterFormats); | |
allFormats.addAll(vectorFormats); | |
allFormats.forEach( | |
formatExt -> | |
{ | |
String inputFile = templatesFolder + "template." + formatExt; | |
boolean isVectorFormat = vectorFormats.contains(formatExt); | |
//Need to rasterize vector formats before background remove | |
if (isVectorFormat) | |
{ | |
inputFile = rasterizeVectorImage(formatExt, inputFile); | |
} | |
String outputFile = templatesFolder + String.format("%s_%s.png", filterName, formatExt); | |
System.out.println("Processing " + formatExt); | |
try (RasterImage image = (RasterImage) Image.load(inputFile)) | |
{ | |
doFilter.accept(image); | |
//If image is multipage save each page to png to demonstrate results | |
if (image instanceof IMultipageImage && ((IMultipageImage) image).getPageCount() > 1) | |
{ | |
IMultipageImage multiPage = (IMultipageImage) image; | |
final int pageCount = multiPage.getPageCount(); | |
final Image[] pages = multiPage.getPages(); | |
for (int pageIndex = 0; pageIndex < pageCount; pageIndex++) | |
{ | |
String fileName = String.format("%s_page%d_%s.png", filterName, pageIndex, formatExt); | |
pages[pageIndex].save(fileName, new PngOptions()); | |
} | |
} | |
else | |
{ | |
image.save(outputFile, new PngOptions()); | |
} | |
} | |
//Remove rasterized vector image | |
if (isVectorFormat) | |
{ | |
new File(inputFile).delete(); | |
} | |
} | |
); | |
} | |
private static String rasterizeVectorImage(String formatExt, String inputFile) | |
{ | |
String outputFile = templatesFolder + "rasterized."+ formatExt + ".png"; | |
try (Image image = Image.load(inputFile)) | |
{ | |
image.save(outputFile, new PngOptions()); | |
} | |
return outputFile; | |
} |
Aspose.Imaging for Java API . के बारे में
Aspose.Imaging API अनुप्रयोगों के भीतर छवियों (फ़ोटो) को बनाने, संशोधित करने, आकर्षित करने या परिवर्तित करने के लिए एक छवि प्रसंस्करण समाधान है। यह प्रदान करता है: क्रॉस-प्लेटफ़ॉर्म छवि प्रसंस्करण, जिसमें विभिन्न छवि प्रारूपों (समान बहु-पृष्ठ या बहु-फ़्रेम छवि प्रसंस्करण सहित) के बीच रूपांतरण शामिल हैं, लेकिन इन्हीं तक सीमित नहीं है, ड्राइंग जैसे संशोधन, ग्राफिक प्राइमेटिव के साथ काम करना, परिवर्तन (आकार बदलना, फसल करना, फ्लिप करना और घुमाना) , बिनाराइज़ेशन, ग्रेस्केल, एडजस्ट), उन्नत छवि हेरफेर सुविधाएँ (फ़िल्टरिंग, डिथरिंग, मास्किंग, डेस्क्यूइंग), और मेमोरी ऑप्टिमाइज़ेशन रणनीतियाँ। यह एक स्टैंडअलोन लाइब्रेरी है और इमेज ऑपरेशंस के लिए किसी सॉफ्टवेयर पर निर्भर नहीं है। परियोजनाओं के भीतर देशी एपीआई के साथ आसानी से उच्च-प्रदर्शन छवि रूपांतरण सुविधाएँ जोड़ सकते हैं। ये 100% निजी ऑन-प्रिमाइसेस एपीआई हैं और छवियों को आपके सर्वर पर संसाधित किया जाता है।ऑनलाइन ऐप के माध्यम से TGAs Binarize
हमारी लाइव डेमो वेबसाइट पर जाकर TGA दस्तावेज़ों को बिनराइज़ करें। लाइव डेमो के निम्नलिखित लाभ हैं
TGA क्या है TGA फाइल का प्रारूप
Truevision TGA, जिसे अक्सर TARGA के रूप में जाना जाता है, Truevision Inc. (अब AVID टेक्नोलॉजी का हिस्सा) द्वारा बनाया गया एक रेखापुंज ग्राफिक्स फ़ाइल स्वरूप है। यह TARGA और VISTA बोर्डों का मूल स्वरूप था, जो IBM-संगत PC के लिए Highcolor/truecolor डिस्प्ले का समर्थन करने वाले पहले ग्राफिक कार्ड थे।
अधिक पढ़ेंअन्य समर्थित बिनाराइज़ प्रारूप
Java का उपयोग करके, कोई भी व्यक्ति आसानी से विभिन्न प्रारूपों को बिनाराइज़ कर सकता है, जिसमें शामिल हैं।