GIMP ve Python-Fu Nedir?
GIMP (GNU Image Manipulation Program), açık kaynak kodlu bir grafik düzenleme yazılımıdır. Fotoğraf düzenleme, görüntü oluşturma ve görsel tasarım gibi birçok alanda kullanılmaktadır. GIMP, kullanıcıların karmaşık grafikler oluşturmasına ve düzenlemesine olanak tanıdığı gibi, programcıların da otomasyon ve özelleştirme imkanı sunmaktadır. Burada devreye Python-Fu girmektedir.
Python-Fu, GIMP için Python tabanlı bir uzantıdır ve GIMP’in yeteneklerini genişletmek için kullanılabilir. GIMP’in komutlarının Python dilinde kullanılmasını sağlar ve kullanıcıların kendi scriptlerini yazarak GIMP’de çeşitli işlemleri otomatikleştirmesini veya özelleştirmesini mümkün kılar. Bu makalede, GIMP ile Python-Fu kullanarak görsel düzenleme işlemlerini nasıl gerçekleştirebileceğinizi adım adım keşfedeceğiz.
Python-Fu sayesinde sadece basit bir grafik düzenleme yapmakla kalmaz, aynı zamanda karmaşık iş akışlarını otomasyon ile kolayca gerçekleştirebilirsiniz. Kendi filtrelerinizi, araçlarınızı veya iş akışlarınızı oluşturarak GIMP’in potansiyelini en üst düzeye çıkarabilir ve yaratıcı projelerinizi daha hızlı bir şekilde gerçekleştirebilirsiniz.
Python-Fu İle Başlarken
Python-Fu’yu kullanarak GIMP üzerinde çalışmaya başlamak için öncelikle GIMP yazılımının yüklü olduğundan emin olmalısınız. GIMP, Python ile etkileşime geçebilen bir ortam sunar; bu nedenle Python yüklüyse, Python-Fu özelliği ile GIMP’i entegre bir şekilde kullanmaya başlayabilirsiniz. GIMP’in versiyonu ile birlikte, Python-Fu versiyonunun uyumlu olduğuna dikkat edin.
GIMP’de Python-Fu’yu kullanmak için GIMP’i açtıktan sonra, “Filters” menüsünde “Python-Fu” alt menüsünü göreceksiniz. Bu bölüm, kendi geliştireceğiniz Python tabanlı scriptlerinizi yüklemenizi ve çalıştırmanızı sağlar. Şimdi basit bir Python-Fu scripti yazarak başlamaya ne dersiniz? Aşağıda, GIMP üzerinde bir görüntüyü yükleyip, onu grileştiren basit bir script örneği verilmiştir:
from gimpfu import *
def grayscale(image, drawable):
pdb.gimp_image_undo_group_start(image)
pdb.gimp_context_set_foreground((0, 0, 0))
pdb.gimp_image_convert_rgb(image)
pdb.gimp_drawable_colorize(drawable, 0, 0, 0)
pdb.gimp_image_undo_group_end(image)
register(
"python-fu-grayscale",
"Convert image to grayscale",
"Convert image to grayscale using Python-Fu",
"Your Name",
"Your Copyright",
"2023",
"RGB*",
"*",
[],
[ (PF_IMAGE, "image", "Image", None),
(PF_DRAWABLE, "drawable", "Drawable", None)],
grayscale,
)
main()
Bu scripti GIMP’te Python-Fu arayüzünde çalıştırarak, seçtiğiniz bir görüntüyü grayscale (grayscale) formatına dönüştürebilirsiniz. Kodu GIMP Python-Fu scriptleri için uygun bir dizine kaydetmeyi unutmayın. Böylece scriptinizi her seferinde GIMP içinden çağırabilirsiniz. Yukarıdaki açıklamalar ve örnek ile basit bir demo gerçekleştirerek Python-Fu’nun temellerini kavrayabilirsiniz.
GIMP Python-Fu ile Görüntü İşleme Teknikleri
Python-Fu kullanarak daha ileri düzey görüntü işleme teknikleri geliştirmek mümkündür. Örneğin, belirli bir dizi görüntü üzerinde toplu işlemler gerçekleştirerek zamandan tasarruf edebilirsiniz. Aşağıdaki bölümde, Python-Fu ile toplu işleme ve görüntü dönüştürme örneğini inceleyeceğiz:
Birden fazla görüntüyü döngü kullanarak işlemek, Python-Fu’nun sağladığı avantajlardan biridir. Toplu işleme için GIMP’te bir dizindeki tüm görüntüleri alarak ve her birine belirli bir işlem gerçekleştirerek başlayabilirsiniz. Aşağıdaki kod, belirtilen bir dizindeki tüm JPG dosyalarını alır ve her birini grileştirir:
import os
def bulk_grayscale(directory):
for filename in os.listdir(directory):
if filename.endswith('.jpg'):
image = pdb.gimp_file_load(os.path.join(directory, filename), filename)
drawable = image.active_layer
grayscale(image, drawable)
pdb.gimp_file_save(image, drawable, os.path.join(directory, 'grayscale_' + filename), 'grayscale_' + filename)
pdb.gimp_image_delete(image)
register(
"python-fu-bulk-grayscale",
"Bulk convert JPG images to grayscale",
"Bulk convert JPG images to grayscale using Python-Fu",
"Your Name",
"Your Copyright",
"2023",
"RGB*",