13 Ekim 2016 Perşembe

Fotoğraf Düzme Aracı - PixPack


Günümüzde fotoğraf çekmek ve bu fotoğrafları paylaşmak yeme içme kadar sıradan hale geldi. Binlerce fotoğraf çekip içlerinde en iyi olanını paylaşırız. Fakat geriye kalanlar bilgisayarımızın sabit sürücüsünde ya da CD'lerde yedeklenir. Elbette bulut adı verilen yeni teknoloji sayesinde belki buna bile ihtiyaç duymayız. Ancak her duruma karşı mutlaka hepimiz fiziksel bir yedeğin daha güvenilir olduğunu biliriz.


Başlamaya Hazır
Ben kendi fiziksel arşivimi yönetirken ciddi sıkıntılar çektim. Fotoğrafların ne zaman çekildiğini bilmek benim için çok önemli. Fotoğraflar da buna göre gruplandırılmalı. Google'ın Picasa uygulaması bunu daha önce kendi içinde yapmaktaydı ama fotoğrafları bu şekilde düzenleyip kalıcı olarak kaydetmiyordu.

Ben de bu soruna bir çözüm getirmek istedim. Python ile yazdığım bir program aracılığıyla fotoğraflarımı çekilme tarihlerine göre gruplayıp klasörlere kopyaladım. Bu programı yayınlamak da paylaşımcı ruhumun bir parçası belki de :)

Programın basit bir arayüzü var. İlk önce dosyayı taratmanız gerekiyor. Program oluşturduğu raporun özeti sayılabilecek verileri ekrana taşır. Daha sonra resimlerin düzenlenip kopyalanmasını istediğiniz klasörün tam yolunu gerekli yere girerek "Arşive Başla" butonunu tıklamanız gerekiyor. İşlem tamamlandığında ve ya bir şeyler ters gittiğinde en atta bulunan "İşlem" satırında uyarı görünecektir.


Programın özellikleri:


  • Girilen dosya adresinde ve alt klasörlerinde bulunan tüm dosyaları tarayıp ".jpeg", ".jpg" ve ".png" dosya türlerindeki tüm resimlerin varsa çekilme tarihlerini kullanarak onları klasörler halinde gruplar. Örnek gruplama şekli: Mesela 2014'ün haziran ayında ve 2013'ün ocak ayında çekilmiş resimleriniz varsa bunları "2014-06" ve "2013-01" isimli klasörlere kopyalar. Fotoğrafın çekilme tarihine erişilemezse ve ya kullandığınız telefon ya da fotoğraf makinesi bu veriyi fotoğrafa işlememişse, fotoğraflarınız "NOT_FOUND" isimli bir klasörde toplanır.
  • Program taşıma işlemi YAPMAZ. Bu programda sadece kopyalama metodu kullanılmıştır. Dolayısıyla resimlerin asılları üzerinde hiçbir değişiklik YAPILMAZ, SİLİNMEZ. Yine de endişeniz varsa işleme başlamadan önce asılları yedeklemenizi öneririm. Veri kayıplarından sorumlu değilim.
  • Seçilmesi halinde bir rapor dosyası, asılların bulunduğu dosya yoluna ".csv" dosya tipinde oluşturulur. Herhangi bir metin editörü yardımıyla inceleyebilirsiniz.
  • Hedef dosya yolu seçilmezse, yeniden düzme işlemi, fotoğrafların asıllarının bulunduğu dosya yolu içerisinde gerçekleşir. Herhangi bir kelime ya da kelime grubu yazılırsa, program kaynak klasörün bulunduğu dosya yolunu baz alır ve işlemi özgün dosyalaların bulunduğu klasörde gerçekleştirir.

    Kullanım:


    İş Üstünde
    Linux için, terminale "python3 pixpack.py" yazarak çalıştırabilirsiniz. Eğer erişim hatası alırsanız "chmod +x duzucu.py" yazarak sorunu çözebilirsiniz. Ayrıca program "PIL" ve "PyQt5" kütüphanelerini kullandığı için bunların da yüklü olması gerekir. Python 3 için nasıl yükleneceğine internet üzerinden arama yaparak bulabilirsiniz. Sisteminize kalıcı olarak yüklemek istiyorsanız, GitHub bağlantısındaki talimatları izleyerek sistem programı olarak sürekli kullanabilirsiniz. Masaüstünüzde ya da programlar menüsünde de programın simgesini tıklayarak erişebilirsiniz. Tarama ve kopyalama işlemi tarattığınız arşivin büyüklüğüne göre uzayabilir. Panik yok, sabırlı olur. İşlem satırında yazılanları takip ederek endişelenmeden fotoğraflarınızı düzebilirsiniz.


    Sorunlar ve değerlendirmeleriniz için twitter adresim üzerinden iletişime geçebilirsiniz.

    Bilinen Böcekler ve Gereksinimler:

    GitHub üzerinden sorun bildirimi yapabilir, sosyal ağlardan ulaşabilirsiniz.

    Yol Haritası:
    • Multithreading ile pencere donmalarını giderme [22/10/16 - Düzeltildi]
    • Kullanıcı isteğine göre farklı düzme kriterleri ekleme
    • ProgressBar ekleme [08/11/16 - Eklendi]
    • Arayüzü PyQt ile tekrar oluşturma [22/10/16 - QtDesigner ile yeniden yazıldı]



    Hiç yorum yok:

    Yorum Gönder