Βιβλιοθήκη Ταχύτερης επεξεργασίας εικόνας ανοιχτού κώδικα για  C++

Δημιουργία, χειρισμός, σχεδίαση, διαίρεση, αντιγραφή και μετατροπή δημοφιλών μορφών εικόνας. Εφαρμόστε φίλτρα, διαιρέστε δύο εικόνες, δικτυώστε μια εικόνα μέσω της Δωρεάν βιβλιοθήκης C++.

Το libvips είναι μια προηγμένη βιβλιοθήκη επεξεργασίας εικόνας ανοιχτού κώδικα που χρησιμοποιεί πολύ χαμηλή μνήμη και εκτελεί πολύ γρήγορες λειτουργίες. Η βιβλιοθήκη μπορεί εύκολα να χειριστεί μεγάλες εικόνες και υποστηρίζει μια αξιοπρεπή σειρά μορφών αρχείων εικόνας, όπως JPEG, TIFF, PNG, WebP, HEIC, FITS, Matlab, OpenEXR, PDF, SVG, HDR, PPM / PGM / PFM, CSV, GIF , Analyze, NIfTI, DeepZoom και OpenSlide. Μπορεί εύκολα να φορτώσει εικόνες μέσω ImageMagick ή GraphicsMagick, επιτρέποντάς του να λειτουργεί με μορφές όπως το DICOM.

Τα πρωτότυπα libris εφαρμόζονται λογικά και ορισμένες τεχνικές χρήσης όπως η παραγωγή κώδικα τρεξίματος βοηθούν στην ταχεία επεξεργασία των εικόνων. Σε σύγκριση με άλλες βιβλιοθήκες επεξεργασίας εικόνας, παρατηρήθηκε ότι η libris χρειάζεται λίγο AM και τρέχει γρηγορότερα, ειδικά σε μηχανές με πολλαπλές Caps. Αυτό οφείλεται κυρίως στην έξυπνη αρχιτεκτονική που χρησιμοποιεί η οποία διαχωρίζει αυτόματα τη ροή εργασίας εικόνας.

Η βιβλιοθήκη παρέχει υποστήριξη για ένα τεράστιο φάσμα αριθμητικών τύπων, από απλό 8-bit int έως το συγκρότημα 128-bit. Οι περισσότερες από τις βιβλιοθήκες επεξεργασίας εικόνας χρησιμοποιούν ντροπαλές λειτουργίες, αλλά η libris από την άλλη βάζει το νήμα στο σύστημα "Εικόνα" και αναθέτει ένα αντίγραφο ολόκληρου του αγωγού εικόνας σε κάθε νήμα. Αυτό το οριζόντιο στυλ νήματος κάνει καλύτερη χρήση των κιρσών επεξεργαστών και μειώνει το κλείδωμα.

Η βιβλιοθήκη libris είναι μια βιβλιοθήκη επεξεργασίας εικόνας που προσφέρει καλύτερη απόδοση από πολλές άλλες βιβλιοθήκες. Η βιβλιοθήκη έχει παράσχει υποστήριξη για πολλά σημαντικά χαρακτηριστικά επεξεργασίας εικόνας, όπως ζωγραφίζοντας εικόνες, χωρίζοντας δύο εικόνες, σχεδιάζοντας έναν κύκλο σε μια εικόνα, αντιγράφοντας μια εικόνα σε μια άλλη εικόνα, σχεδιάζοντας μια γραμμή σε μια εικόνα.

Previous Next

Ξεκινώντας με το libvips

Κλωνοποιήστε τις πιο πρόσφατες πηγές χρησιμοποιώντας την ακόλουθη εντολή.

Εγκαταστήστε τη libris μέσω εντολών git

 git clone git://github.com/libvips/libvips.git 

Η δημιουργία από το git χρειάζεται περισσότερα πακέτα, θα χρειαστείτε τουλάχιστον gtk-doc και gobject-introspection.

Εγκαταστήστε πακέτα libvips μέσω της εντολής git

 ./autogen.sh
make
sudo make install 

Ταχύτερη απόδοση εικόνων μέσω C++ API

Η βιβλιοθήκη libris έχει προσφέρει λειτουργικότητα για ταχύτερη δημιουργία εικόνων και χειραγώγηση σε όλες τις κορυφαίες πλατφόρμες. Ορισμένες από τις κορυφαίες βιβλιοθήκες επεξεργασίας εικόνων όπως ImageMagick και Gt βιβλιοθήκες είναι πολύ ισχυρές και παρέχουν προηγμένα χαρακτηριστικά για την επεξεργασία εικόνων, αλλά χρειάζονται μεγάλη μνήμη για την επεξεργασία εικόνων. Από την άλλη πλευρά, η libris μπορεί να κάνει σχεδόν το ίδιο ενεργό με τα ImageMagick, αλλά πολύ πιο γρήγορα και με ένα σχετικά μικρό αποτύπωμα μνήμης.

Αποθήκευση εικόνας σε άλλες υποστηριζόμενες μορφές

Η βιβλιοθήκη ανοιχτού κώδικα libvips έχει παράσχει ένα σύνολο λειτουργιών που φορτώνουν και αποθηκεύουν εικόνες σε διάφορες μορφές. Η βιβλιοθήκη περιλαμβάνει ενσωματωμένη υποστήριξη για αποθήκευση εικόνων σε δημοφιλείς μορφές όπως TIFF, JPEG, PNG, Analyze, PPM, OpenEXR, CSV, Matlab, Radiance, RAW, FITS, WebP, SVG, PDF, GIF και VIPS. Το VipsForeign μπορεί να χρησιμοποιηθεί για τη φόρτωση και αποθήκευση εικόνων σε διάφορες μορφές.

Διαβάστε και γράψτε Εικόνες στη Μνήμη μέσω C++ API

int 
main( int argc, char **argv )
{
	gchar *buf;
	gsize len;
	int i;
	if( VIPS_INIT( argv[0] ) )
		vips_error_exit( NULL );
        if( argc != 2 ) 
		vips_error_exit( "usage: %s FILENAME", argv[0] ); 
	if( !g_file_get_contents( argv[1], &buf, &len, NULL ) )
		vips_error_exit( NULL );
	for( i = 0; i < 10; i++ ) {
		VipsImage *image;
		void *new_buf;
		size_t new_len;
		printf( "loop %d ...\n", i );
		if( !(image = vips_image_new_from_buffer( buf, len, "", 
			"access", VIPS_ACCESS_SEQUENTIAL,
			NULL )) ) 
			vips_error_exit( NULL );
		if( vips_image_write_to_buffer( image, 
			".jpg", &new_buf, &new_len, 
			"Q", 95,
			NULL ) ) 
			vips_error_exit( NULL );
		g_object_unref( image );
		g_free( new_buf );
	}
	g_free( buf );
	vips_shutdown();
	return( 0 );
}

Ταχύτερη αλλαγή μεγέθους εικόνας

Η βιβλιοθήκη ανοιχτού κώδικα libvips δίνει στους προγραμματιστές λογισμικού τη δύναμη να αλλάζουν το μέγεθος των εικόνων εν κινήσει μέσα στις δικές τους εφαρμογές. Αρχικά, πρέπει να φορτώσετε την εικόνα από το αποθετήριο εικόνων παρέχοντας ένα όνομα εικόνας και μια πλήρη διεύθυνση. Μετά από αυτό, μπορείτε να αλλάξετε το μέγεθός του στο καθορισμένο πλάτος και ύψος σύμφωνα με τις ανάγκες σας. Μετά από αυτό, μπορείτε να το αποθηκεύσετε στη θέση της επιλογής σας με το νέο μέγεθος.

Διαβάστε και γράψτε Εικόνες στη Μνήμη μέσω C++ API

int
vips_resize( VipsImage *in, VipsImage **out, 
	double scale, ... )
{
	va_list ap;
	int result;
	va_start( ap, scale );
	result = vips_call_split( "resize", ap, in, out, scale );
	va_end( ap );
	return( result );
}

Φιλτράρισμα εικόνας μέσω C++ API

Το φιλτράρισμα εικόνων είναι ένα πολύτιμο χαρακτηριστικό που χρησιμοποιείται σε διάφορες εφαρμογές επεξεργασίας εικόνας και όρασης υπολογιστών σε όλο τον κόσμο. Η βιβλιοθήκη libris παρέχει πλήρη υποστήριξη για φιλτράρισμα εικόνων μέσω C++ εντολών. Χαρακτηριστικά όπως εξομάλυνση, συμβίωση και ενίσχυση άκρη είναι μερικά παραδείγματα εργασιών επεξεργασίας εικόνας που υλοποιούνται με φιλτράρισμα. Η βιβλιοθήκη περιελάμβανε επίσης φίλτρα NG όπως η διαφορά στα αριστερά, ένας μέσος όρος αριστερά και πάνω, προσαρμοστικό, επιλέξτε τον καλύτερο προκάτοχο γείτονα αυτόματα και χωρίς φιλτράρισμα. Περιλαμβάνει επίσης φίλτρα εισαγωγής που μπορούν να φορτώσουν με libMagick και με OpenSlide.

 Ελληνικά