[Java] ما هي أفضل مكتبة / طريقة معالجة الصور جافا؟


Answers

أعلم أن هذا السؤال قديم جدًا ، ولكن مع ظهور برنامج جديد ، فإنه يساعد في الحصول على بعض الروابط الجديدة للمشاريع التي قد تكون مثيرة للاهتمام للناس.

imgscalr هي عبارة عن imgscalr بسيط لتغيير حجم صورة جافا (مثل العمليات البسيطة ، مثل الحشو ، أو الاقتصاص ، أو الدوران ، أو imgscalr ، إلخ) ، وهو أمر بسيط للغاية ، حيث تتكون فئة واحدة من مجموعة من عمليات الرسومات البسيطة التي يتم تعريفها على أنها طرق ثابتة يمكنك تمرير صورة والعودة النتيجة.

المثال الأساسي لاستخدام المكتبة سيبدو كما يلي:

BufferedImage thumbnail = Scalr.resize(image, 150);

وقد يبدو الاستخدام الأكثر شيوعًا لإنشاء صور مصغرة للصور باستخدام بعض التعديلات النوعية للجودة وما شابه مثل:

import static org.imgscalr.Scalr.*;

public static BufferedImage createThumbnail(BufferedImage img) {
    // Create quickly, then smooth and brighten it.
    img = resize(img, Method.SPEED, 125, OP_ANTIALIAS, OP_BRIGHTER);

    // Let's add a little border before we return result.
    return pad(img, 4);
}

تستخدم جميع عمليات معالجة الصور خط أنابيب Java2D الخام (والذي يتم تسريع الأجهزة على المنصات الرئيسية) ولن تعرض الألم من الاتصال عبر JNI مثل تنافس المكتبات في شفرتك.

كما تم نشر imgscalr في إنتاجات واسعة النطاق في عدد قليل من الأماكن - إن تضمين فئة AsyncScalr يجعلها نقطة مثالية لأي معالجة من جانب الخادم.

هناك العديد من التعديلات على جودة الصور التي يمكنك استخدامها للتداول بين السرعة والجودة مع أعلى وضع ULTRA_QUALITY ، مما يوفر نتيجة محسوبة تبدو أفضل من تطبيق Lancoz3 في GIMP.

Question

أنا أستخدم كل من واجهة برمجة تطبيقات الإعلام JAI و ImageMagick؟

ImageMagick لديه بعض القضايا التدرجية و JMIJI مقرها ليست جذابة سواء. JAI لديه نتائج رديئة الجودة عند القيام بعمليات تغيير الحجم مقارنة مع ImageMagick.

لا أحد يعرف أي أدوات ممتازة سواء مفتوحة المصدر أو التجارية التي هي جافا المحلية وتقديم نتائج عالية الجودة؟







im4java - إذا كنت تشغّل لينكس ، فليس هناك أي تكلفة عملية جديدة.




تذكر list برامج الرؤية JHLabs و NeatVision بين الكثير من المكتبات الأخرى غير Java.




حاول استخدام Catalano Framework .

النقاط الرئيسية:

  • الهندسة المعمارية مثل AForge.NET/Accord.NET.
  • شغِّل في كلتا البيئتين باستخدام نفس الرمز وسطح المكتب والروبوت.
  • يحتوي على عدة فلاتر في نفس الوقت.
  • التنمية على البخار الكامل.

يعتبر إطار كاتالانو إطارًا للحوسبة العلمية في جافا وأندرويد. بدأ المشروع كميناء مبدئي للعديد من خصائص إطارات AForge.NET و Accord.NET لـ .NET ، لكنه ينمو بثبات مع ميزات أكثر تقدمًا والتي يتم الآن مشاركتها بين هذه المشاريع.

مثال:

FastBitmap fb = new FastBitmap(bitmap);

Grayscale g = new Grayscale();
g.applyInPlace(fb);

Threshold t = new Threshold(120);
t.applyInPlace(fb);

bitmap = fb.toBitmap();

//Show the result