1. Producten
  2.   Afbeelding
  3.   C++
  4.   Leptonica  

Leptonica  

 
 

C API voor geavanceerde beeldverwerking

Met de Open Source C-bibliotheek kunnen ontwikkelaars geavanceerde beeldverwerkingsbewerkingen uitvoeren, zoals het schalen, vertalen, roteren en afschuiven van afbeeldingen in hun eigen apps.

Leptonica is een open source C-beeldverwerkings- en beeldanalysebibliotheek die erg handig is voor het werken met documentafbeeldingen en natuurlijke afbeeldingen. De bibliotheek is zeer stabiel en biedt ondersteuning voor tal van beeldformaten zoals JPEG, PNG, TIFF, WebP, JP2, BMP, PNM, PS, GIF en PDF. U kunt eenvoudig lees- en schrijfbewerkingen uitvoeren op de meegeleverde lijst met afbeeldingsindelingen. De bibliotheek gebruikte meestal een objectgeoriënteerde benadering en een reeks ontwerpprincipes die de code veilig, draagbaar en transparant maken.

De bibliotheek biedt ondersteuning voor verschillende belangrijke bewerkingen en een reeks hulpmiddelen voor beeldverwerking en beeldanalyse. De bibliotheek ondersteunt bewerkingen zoals beeldschaling, vertaling, rotatie, afschuiving, beeldtransformaties met veranderingen in pixeldiepte, binaire en grijsschaalmorfologie, Pixelwise-maskering, overvloeiing, verbetering, rekenkundige bewerkingen en nog veel meer. Het ondersteunt ook verschillende belangrijke hulpprogramma's, zoals voor het verwerken van arrays van afbeeldingsgerelateerde gegevenstypen zoals pixa, boxa, pta en andere.

Het biedt ook functies voor het lezen en schrijven van bestanden met verschillende afbeeldingen en het schrijven van bestanden met speciale TIFF-tags die in de koptekst zijn ingebed. Het stelt ontwikkelaars ook in staat PostScript-bestanden in verschillende formaten te schrijven, zoals transformatie naar PDF, rasterafbeeldingen en het converteren van een PostScript-bestand naar een set gecomprimeerde afbeeldingen.

Previous Next

Aan de slag met Leptonica

De eenvoudigste manier om Leptonica te installeren is via GitHub. Gebruik de volgende opdracht voor een vlotte installatie:

Installeer Leptonica via GitHub.

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

Afbeeldingen lezen en schrijven

De open source bibliotheek Leptonica geeft softwareontwikkelaars de mogelijkheid om afbeeldingen in hun eigen applicaties te lezen en te schrijven. Het biedt verschillende belangrijke methoden voor het lezen en schrijven van afbeeldingen, zoals functies op laag en hoog niveau voor het lezen en schrijven van afbeeldingsgegevens, functies voor het lezen en schrijven van bestanden met meerdere afbeeldingen, bestanden met TIFF-tags ingebed in de koptekst, het lezen van JPEG-bestanden , lezen en schrijven van PostScript-bestanden en verschillende andere functies. Er zijn enkele specifieke encoders die ook door de bibliotheek worden ondersteund.

Lees Images via Leptonica bibliotheek

// 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();

Afbeelding schalen via C Library

De open source-bibliotheek Leptonica heeft volledige ondersteuning geboden voor het eenvoudig schalen van afbeeldingen in hun eigen C-toepassing. Er zijn talloze schaalfuncties door Leptonica, zoals opschalen met behulp van lineaire interpolatie, schaalverkleining met behulp van subsampling, of door gebiedstoewijzing, bemonstering, 2x en 4x lineaire interpolatie opschaling, integer subsamplen van RGB naar grijs of binair, en nog veel meer. Afgezien daarvan wordt ook zeer snel schalen op binaire afbeeldingen aangeboden, en dit is handig voor beeldanalyse van de gescande binaire tekst.

Betere beeldrotatie via C-bibliotheek

De open source-bibliotheek Leptonica heeft ondersteuning geboden voor het roteren van afbeeldingen binnen hun eigen C-applicaties. Er zijn talloze manieren om de beeldrotatiebewerking uit te voeren, zoals rotatie door afschuiving, rotatie door gebiedstoewijzing, speciale rotaties met 90, 180 of 270 graden, rotatie met 2 of 3 afschuiving en nog veel meer.

180 Degree Image Rotation via C bibliotheek

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);
 Dutch