scikit-image Python (Nasıl Çalışir: Geliştiriciler İçin Bir Kılavuz)
Scikit-image, Python'da görüntü işleme için tasarlanmış algoritmaların bir koleksiyonudur. Serbestçe kullanılabilir ve kısıtlamasızdır, yüksek kaliteli, hakemli kodları gönüllü bir topluluk tarafından oluşturulmuştur. Scikit-image projesi, Google Write Code programının bir parçası olarak 2009 yılında Google'da Stefan van der Walt ve diğer Scikit-image katkıda bulunanları tarafından başlatıldı. Akademik ve endüstriyel uygulamalar için kullanımı kolay, verimli ve genişletilebilir bir Python görüntü işleme kütüphanesi oluşturmayı amaçladı. Bu makalede, Scikit-image Python görüntü işleme kütüphanesini ve Iron Software adlı bir PDF oluşturma kütüphanesini inceleyeceğiz: IronPDF.
Başlarken
Scikit-image hakkında bilgi edinmek için resmi web sitesini inceleyin. Ayrıca, Data Carpentry, Python'da Scikit kullanarak görüntü işlemeyi öğreten harika bir ders sunuyor.
pip aracılığıyla kurulum
- Python'un yüklü olduğundan emin olun (en az sürüm 3.10).
Terminalinizi veya komut istemini açın.
- pip'i güncelleyin:
python -m pip install -U pippython -m pip install -U pipSHELL- pip aracılığıyla scikit-image'ı yükleyin:
python -m pip install -U scikit-imagepython -m pip install -U scikit-imageSHELL- Demo veri setlerine erişmek için kullanın:
python -m pip install -U scikit-image[data]python -m pip install -U scikit-image[data]SHELL- Paralel işleme yetenekleri dahil olmak üzere ek bilimsel paketler için:
python -m pip install -U scikit-image[optional]python -m pip install -U scikit-image[optional]SHELL
Temel Örnek
import skimage.io
import matplotlib.pyplot as plt
# Load an image from file
image = skimage.io.imread(fname='land.jpg')
# Display the image
plt.imshow(image)
plt.show()import skimage.io
import matplotlib.pyplot as plt
# Load an image from file
image = skimage.io.imread(fname='land.jpg')
# Display the image
plt.imshow(image)
plt.show()Filtreler
import skimage as ski
# Load a sample image from the scikit-image default collection
image = ski.data.coins()
# Apply a Sobel filter to detect edges
edges = ski.filters.sobel(image)
# Display the edges
ski.io.imshow(edges)
ski.io.show()import skimage as ski
# Load a sample image from the scikit-image default collection
image = ski.data.coins()
# Apply a Sobel filter to detect edges
edges = ski.filters.sobel(image)
# Display the edges
ski.io.imshow(edges)
ski.io.show()Kısaca skimage olarak da adlandırılan Scikit-image, görüntü işleme görevleri için güçlü bir Python kütüphanesidir. NumPy dizileri, SciPy ve matplotlib üzerine inşa edilmiştir ve görüntüleri manipüle etmek ve analiz etmek için çeşitli fonksiyonlar ve algoritmalar sağlar. skimage.data.coins(), kütüphaneden örnek görüntülere erişmek için kullanılır. skimage.filters, yerleşik filtrelere ve yardımcı işlevlere erişim sağlar.
Scikit-image'nin Kilit Özellikleri
1. Görüntü Filtreleme ve Kenar Tespiti
from skimage import io, filters
# Load an image
image = io.imread('image.jpg')
# Apply Gaussian blur
blurred_image = filters.gaussian(image, sigma=1.0)
# Apply Sobel edge detection
edges = filters.sobel(image)
# Display the original image, blurred image, and edges
io.imshow_collection([image, blurred_image, edges])
io.show()from skimage import io, filters
# Load an image
image = io.imread('image.jpg')
# Apply Gaussian blur
blurred_image = filters.gaussian(image, sigma=1.0)
# Apply Sobel edge detection
edges = filters.sobel(image)
# Display the original image, blurred image, and edges
io.imshow_collection([image, blurred_image, edges])
io.show()Çıktı

2. HOG (Histogram of Oriented Gradients) ile Özellik Çıkarma
from skimage import io, color, feature
# Load an example image and convert to grayscale
image = io.imread('image.jpg')
gray_image = color.rgb2gray(image)
# Compute HOG features and visualize them
hog_features, hog_image = feature.hog(gray_image, visualize=True)
# Display the original image and the HOG image
io.imshow_collection([image, gray_image, hog_image])
io.show()from skimage import io, color, feature
# Load an example image and convert to grayscale
image = io.imread('image.jpg')
gray_image = color.rgb2gray(image)
# Compute HOG features and visualize them
hog_features, hog_image = feature.hog(gray_image, visualize=True)
# Display the original image and the HOG image
io.imshow_collection([image, gray_image, hog_image])
io.show()Çıktı

3. Geometrik Dönüşüm - Yeniden Boyutlandırma ve Döndürme
from skimage import io, transform
# Load an image
image = io.imread('image.jpg')
# Resize image by dividing its dimensions by 2
resized_image = transform.resize(image, (image.shape[0] // 2, image.shape[1] // 2))
# Rotate image by 45 degrees
rotated_image = transform.rotate(image, angle=45)
# Display the original image, resized image, and rotated image
io.imshow_collection([image, resized_image, rotated_image])
io.show()from skimage import io, transform
# Load an image
image = io.imread('image.jpg')
# Resize image by dividing its dimensions by 2
resized_image = transform.resize(image, (image.shape[0] // 2, image.shape[1] // 2))
# Rotate image by 45 degrees
rotated_image = transform.rotate(image, angle=45)
# Display the original image, resized image, and rotated image
io.imshow_collection([image, resized_image, rotated_image])
io.show()Çıktı

4. Toplam Varyasyon Filtresi ile Görüntü Gürültü Giderme
from skimage import io, restoration
# Load a noisy image
image = io.imread('image.jpg')
# Apply total variation denoising
denoised_image = restoration.denoise_tv_chambolle(image, weight=0.1)
# Display the noisy image and the denoised image
io.imshow_collection([image, denoised_image])
io.show()from skimage import io, restoration
# Load a noisy image
image = io.imread('image.jpg')
# Apply total variation denoising
denoised_image = restoration.denoise_tv_chambolle(image, weight=0.1)
# Display the noisy image and the denoised image
io.imshow_collection([image, denoised_image])
io.show()Çıktı

Görüntü işleme ve NumPy dizisi hakkında daha fazlasını resmi sayfadan bulabilirsiniz.
IronPDF Tanıtımı

IronPDF, HTML, CSS, resimler ve JavaScript kullanarak PDF belgelerinin oluşturulması, düzenlenmesi ve imzalanması için tasarlanmış sağlam bir Python kütüphanesidir. Performans verimliliğine öncelik verir ve minimum bellek kullanımı ile çalışır. Önemli özellikler şunları içerir:
HTML'den PDF'e Dönüşüm: Chrome PDF işleyicisini kullanarak HTML dosyalarını, HTML dizelerini ve URL'leri PDF belgelerine dönüştürün.
Çapraz Platform Desteği: Windows, Mac, Linux ve çeşitli Bulut Platformları üzerinde Python 3+ ile uyumludur. IronPDF ayrıca .NET, Java, Python ve Node.js ortamlarında da erişilebilirdir.
Düzenleme ve İmzalama: PDF özelliklerini özelleştirin, şifreler ve izinler gibi güvenlik önlemlerini uygulayın ve dijital imzaları sorunsuz bir şekilde uygulayın.
Sayfa Şablonları ve Ayarları: Başlıklar, alt bilgi, sayfa numaraları, ayarlanabilir kenar boşlukları, özel kağıt boyutları ve uyarlanabilir tasarımlar gibi özelliklerle PDF düzenleri oluşturun.
- Standartlara Uygunluk: PDF/A ve PDF/UA gibi PDF standartlarına sıkı sıkıya bağlı kalır, UTF-8 karakter kodlaması uyumluluğunu sağlar ve resimler, CSS stil sayfaları ve yazı tipleri gibi varlıkları ustalıkla yönetir.
Kurulum
pip install ironpdf scikit-image
IronPDF ve Scikit Image Kullanarak PDF Belgeleri Oluşturun
Ön Koşullar
- Kod editörü olarak Visual Studio Code'un yüklü olduğundan emin olun
- Python 3 sürümünün kurulu olduğundan emin olun
Başlangıçta, betiklerinizi eklemek için bir Python dosyası oluşturalım.
Visual Studio Code'u açın ve bir dosya oluşturun, scikitDemo.py.
Gerekli kütüphaneleri kurun:
pip install scikit-image ironpdf
Sonra IronPDF ve scikit-image Python paketlerinin kullanımını göstermek için aşağıdaki Python kodunu ekleyin.
from skimage import io, filters
from ironpdf import *
# Apply your license key
License.LicenseKey = "YOUR_LICENSE_KEY"
# Load an image
image = io.imread('image.jpg')
# Apply Gaussian blur
blurred_image = filters.gaussian(image, sigma=1.0)
# Apply Sobel edge detection
edges = filters.sobel(image)
# Save the results to a file
io.imshow_collection([image, blurred_image, edges]).savefig('ironPdf-skimage.png')
# Convert the saved image to a PDF document
ImageToPdfConverter.ImageToPdf("ironPdf-skimage.png").SaveAs("ironPdf-skimage.pdf")
# Display the images
io.show()from skimage import io, filters
from ironpdf import *
# Apply your license key
License.LicenseKey = "YOUR_LICENSE_KEY"
# Load an image
image = io.imread('image.jpg')
# Apply Gaussian blur
blurred_image = filters.gaussian(image, sigma=1.0)
# Apply Sobel edge detection
edges = filters.sobel(image)
# Save the results to a file
io.imshow_collection([image, blurred_image, edges]).savefig('ironPdf-skimage.png')
# Convert the saved image to a PDF document
ImageToPdfConverter.ImageToPdf("ironPdf-skimage.png").SaveAs("ironPdf-skimage.pdf")
# Display the images
io.show()Kod Açıklaması
Bu kod parçası, scikit-image (skimage) ve IronPDF'i birlikte kullanarak bir görüntüyü işlemeyi ve sonuçları bir PDF belgesine dönüştürmeyi gösterir. İşte her bölümün açıklaması:
İthalat Bildirimleri: scikit-image'dan görüntü yükleme ve görüntü filtreleme için gerekli fonksiyonları ithal eder ve IronPDF işlevselliğini ithal eder.
Lisans Anahtarının Uygulanması: IronPDF için lisans anahtarını ayarlar. Bu adım, IronPDF işlevselliklerini kullanmak için gereklidir.
Bir Görüntüyü Yüklemek ve İşlemek:
'image.jpg'isimli görüntüyü scikit-image'ınio.imreadişlevi ile yükler. Sonra 1.0 sigma değeri ilefilters.gaussiankullanarak yüklenen görüntüye Gauss bulanıklığı uygular vefilters.sobelkullanarak yüklenen görüntüye Sobel kenar algılama uygular.Sonuçları Gösterme ve Kaydetme:
io.imshow_collection([image, blurred_image, edges]).savefig('ironPdf-skimage.png'): Orijinal, bulanık ve kenar görüntülerini bir koleksiyon olarak'ironPdf-skimage.png''ye kaydeder.Görüntüyü PDF'ye Dönüştürmek:
ImageToPdfConverter.ImageToPdf("ironPdf-skimage.png").SaveAs("ironPdf-skimage.pdf"): Kaydedilen PNG görüntüsünü IronPDF'nin işlevselliğini kullanarak bir PDF belgesine dönüştürür.- Görüntüleri Gösterme:
io.show(): Görüntüleri grafiksel bir pencerede gösterir.
Bu kod parçası, görüntü işleme için scikit-image'in yeteneklerini ve işlenmiş görüntüleri PDF belgelerine dönüştürmek için IronPDF'i birleştirir. Bir görüntüyü yükleme, Gauss bulanıklığı ve Sobel kenar algılamayı uygulama, PNG dosyası olarak kaydetme, IronPDF'i kullanarak PNG'yi PDF'e dönüştürme ve işlenmiş görüntüleri gösterme işlemlerini gösterir. Bu entegrasyon, görüntülerin işlenmesi, analiz edilmesi ve PDF formatında belgelendirilmesi gerektiğinde faydalıdır; örneğin bilimsel araştırmalarda, görüntü analizi raporlarında veya otomatik belge oluşturma iş akışlarında.
Çıktı


IronPDF Lisansı
IronPDF Python için bir lisans anahtarı ile çalışır. IronPDF for Python, satın almadan önce geniş özelliklerini kontrol etmeleri için kullanıcılara ücretsiz deneme lisansı sunar.
Lisans Anahtarını betiğin başında IronPDF paketi'ni kullanmadan önce yerleştirin:
from ironpdf import *
# Apply your license key
License.LicenseKey = "YOUR_LICENSE_KEY"from ironpdf import *
# Apply your license key
License.LicenseKey = "YOUR_LICENSE_KEY"Sonuç
scikit-image, Python geliştiricilerine görüntüyle ilgili görevleri verimli bir şekilde ele almaları için güç verir. Bilgisayarla görme, tıbbi görüntüleme veya sanatsal projeler üzerinde çalışıyor olsanız da, bu paket sizin ihtiyaçlarınızı karşılar. scikit-image, Python'da görüntü işleme için çok yönlü ve güçlü bir kütüphanedir, filtreleme, segmentasyon, özellik çıkartma ve geometrik dönüşümler gibi görevler için geniş bir fonksiyon ve algoritma yelpazesi sunar. Diğer bilimsel kütüphanelerle sorunsuz entegrasyonu, onu görüntü analizi ve bilgisayarla görme uygulamalarıyla çalışan araştırmacılar, geliştiriciler ve mühendisler için tercih edilen bir seçim haline getirir.
IronPDF, Python uygulamalarında PDF belgelerinin oluşturulmasını, düzenlenmesini ve işlenmesini kolaylaştıran bir Python kütüphanesidir. HTML, resimler veya mevcut PDF'ler gibi çeşitli kaynaklardan PDF dosyaları oluşturma gibi özellikler sunar. Ek olarak, IronPDF belgeleri birleştirme veya ayırma, açıklamalar, filigranlar veya dijital imzalar ekleme, PDF'lerden metin veya resim çıkartma ve metadata ve güvenlik ayarları gibi belge özelliklerini yönetme görevlerini destekler. Bu kütüphane, programatik olarak PDF ile ilgili görevleri yönetmenin verimli bir yolunu sunar, belge oluşturmaya, rapor oluşturmaya veya belge yönetimi işlevselliklerine ihtiyaç duyan uygulamalar için uygundur.
Her iki kütüphane ile birlikte, kullanıcılar görüntülerle çalışabilir, onları verimli bir şekilde işleyebilir ve arşivleme amacıyla sonuçları PDF belgelerine kaydedebilir.










