1. منتجات
  2.   صورة
  3.   C++
  4.   Leptonica  

Leptonica  

 
 

واجهة برمجة تطبيقات C لمعالجة الصور المتقدمة

تتيح مكتبة Open Source C للمطورين أداء عمليات معالجة الصور المتقدمة مثل تحجيم الصورة والترجمة والدوران والقص داخل تطبيقاتهم الخاصة.

Leptonica هي مكتبة مفتوحة المصدر لمعالجة الصور وتحليل الصور وهي مفيدة جدًا للعمل مع صور المستندات وكذلك الصور الطبيعية. المكتبة مستقرة للغاية وتضمنت دعمًا للعديد من تنسيقات الصور مثل JPEG و PNG و TIFF و WebP و JP2 و BMP و PNM و PS و GIF و PDF. يمكنك بسهولة إجراء عمليات القراءة والكتابة على قائمة تنسيقات الصور المتوفرة. تستخدم المكتبة في الغالب نهجًا موجهًا للكائنات ومجموعة من مبادئ التصميم التي تجعل الكود آمنًا ومحمولًا وشفافًا.

توفر المكتبة الدعم للعديد من العمليات الهامة ومجموعة من الأدوات لمعالجة الصور وكذلك تحليل الصور. تدعم المكتبة عمليات مثل تحجيم الصورة ، والترجمة ، والدوران ، والقص ، وتحولات الصورة مع تغييرات في عمق البكسل ، ومورفولوجيا النطاق الثنائي والرمادي ، وإخفاء البكسل ، والمزج ، والتحسين ، والعمليات الحسابية ، وغيرها الكثير. كما أنه يدعم العديد من الأدوات المساعدة المهمة مثل التعامل مع مصفوفات أنواع البيانات المتعلقة بالصور مثل pixa و boxa و pta و أخرى .

وقد وفرت أيضًا وظائف لقراءة وكتابة الملفات التي تحتوي على العديد من الصور وملفات الكتابة مع علامات TIFF الخاصة المضمنة في الرأس. كما يسمح للمطورين بكتابة ملفات PostScript بتنسيقات متنوعة مثل التحويل إلى PDF والصور النقطية وتحويل ملف PostScript إلى مجموعة من الصور المضغوطة.

Previous Next

الشروع في العمل مع Leptonica

أسهل طريقة لتثبيت Leptonica هي باستخدام عبر GitHub. الرجاء استخدام الأمر التالي للتثبيت السلس

قم بتثبيت Leptonica عبر GitHub.

git clone --depth=1 https://github.com/mrdoob/three.js.git 

قراءة وكتابة الصور

توفر مكتبة Leptonica مفتوحة المصدر لمطوري البرامج القدرة على قراءة وكتابة الصور داخل تطبيقاتهم الخاصة. لقد قدم العديد من الطرق المهمة لقراءة وكتابة الصور مثل الوظائف ذات المستوى المنخفض والعالي لقراءة وكتابة بيانات الصورة ، ووظائف قراءة وكتابة الملفات بصور متعددة ، والملفات ذات علامات TIFF المضمنة في الرأس ، وقراءة ملفات JPEG وقراءة وكتابة ملفات PostScript والعديد من الوظائف الأخرى. هناك بعض برامج التشفير المحددة التي تدعمها المكتبة أيضًا.

قراءة الصور عبر مكتبة Leptonica

// Open input image with leptonica library
Pix *image = pixRead("/usr/src/tesseract-3.02/phototest.tif");
api->SetImage(image);
// Get OCR result
char *outText;
outText = api->GetUTF8Text();

تحجيم الصورة عبر مكتبة سي

قدمت مكتبة Leptonica مفتوحة المصدر دعمًا كاملاً لتوسيع نطاق الصور داخل تطبيق C الخاص بها بسهولة. هناك العديد من وظائف التحجيم التي توفرها Leptonica ، مثل الارتقاء باستخدام الاستيفاء الخطي ، أو تصغير الحجم باستخدام أخذ العينات الفرعية ، أو عن طريق تعيين المنطقة ، وأخذ العينات ، و 2 x ، و 4x الاستيفاء الخطي الارتقاء ، والاختزال الصحيح لأعداد RGB إلى اللون الرمادي أو الثنائي ، وغير ذلك الكثير. بصرف النظر عن هذا التحجيم السريع جدًا على الصور الثنائية ، يتم تقديمه أيضًا ، وهو مفيد لتحليل الصور للنص الثنائي الممسوح ضوئيًا.

دوران أفضل للصور عبر مكتبة سي

قدمت مكتبة Leptonica مفتوحة المصدر دعمًا لتدوير الصور داخل تطبيقات C الخاصة بها. هناك العديد من الطرق لتحقيق عملية تدوير الصورة ، مثل التدوير بالقص ، والدوران عن طريق تعيين المنطقة ، والدوران الخاص بمقدار 90 أو 180 أو 270 درجة ، والدوران إما 2 أو 3 قص ، وغير ذلك الكثير.

دوران الصورة 180 درجة عبر مكتبة C

extra = w & 31;
if (extra)
    shift = 32 - extra;
else
    shift = 0;
if (shift)
    rasteropHipLow(datas, w, h, d, wpls, 0, h, shift);
databpl = (w + 7) / 8;
bpl = 4 * wpls;
for (i = 0; i < h; i++) {
    lines = datas + (h - 1 - i) * wpls;
    lined = datad + i * wpld;
    for (j = 0; j < databpl; j++) {
        if (val = GET_DATA_BYTE(lines, bpl - 1 - j))
            SET_DATA_BYTE(lined, j, tab[val]);
    }
}
if (shift)
    rasteropHipLow(datas, w, h, d, wpls, 0, h, -shift);