Akıllı Kod Sanatı
güzellik; Estetik duyuları, özellikle de görme duyusunu tatmin eden şekil, renk veya form gibi niteliklerin bir kombinasyonu.
Bir programı güzelliği oluşturması için eğitirseniz ne olur? Tabii ki de kod ile oluşturulmuş bir sanatın tekrar oluşturulabilmesini sağlarsınız.
JetBrains’de tüm açılış ekranlarımız, afişlerimiz ve yayınlama grafiklerimiz, orijinal görseller oluşturmak için kodsal sanatımızı kullanıyoruz. Masaüstünüze hoş bir estetik yapı kazandırmak için her ürünün kendine özgü tasarımı vardır.
Yenilikler
Grafik oluşturucunun bu sürümü, hem hareketli hem de statik grafikler oluşturmak için nöral bir ağ kullanır.
Görüntü oluşturucumuzun ürettiği görüntüler, esasen ileri beslemeli nöral ağ haritalama fonksiyonlarının birer ürünüdür! Görüntüleri güzel kılmak için uyguladığımız birkaç küçük numaramız olsa da, görüntülerin çoğu ağımıza tam olarak hangi verileri aktardığımızla ilgili.
Çok az çabayla göze hoş gelen görüntüler oluşturmak için Mixer mode adında önemli bir aracımız bulunuyor. Bu aracımız, beğendiğiniz görüntüleri bir araya getirir ve birbirine benzeyen yenilerini üretmek için bu görüntüleri kullanır. Bu aslında, genetik bir algoritmanın basit bir uygulamasıdır. Seçilen görüntülerin parametreleri birbirine karıştırılır ve bu parametreler, tamamen yeni bir görüntüye dönüşebilir. Kullanıcıların hangi görüntüleri karıştırdığına ve dolayısıyla hangilerinin güzel kabul edilebileceğine ilişkin bilgileri kullanarak, hangi parametre kümesinin güzel bir görüntü yaratabileceğini tahmin eden ikili bir sınıflandırma modelini geliştirebiliriz.
Dolayısıyla, nöral ağlarının kullanımı iki yönlüdür. Görüntü oluşturma işleminin kendisi için ve göz alıcı sonuçlar yani çıktılar elde etmek için yukarıda belirtilen sürecin en uygun başlangıç koşullarını tespit ederler.
Artık kendi tasarımcınız olabilir ve masaüstünüz için gerçekten benzersiz bir şekilde size ait bir duvar kağıdı oluşturabilirsiniz. Web sitemizdeki Desktop Art sayfasını ziyaret edin veya doğrudan code2art.jetbrains.com adresini inceleyin. Neural Network’un içeriden nasıl çalıştığını öğrenmek için, Datalore kitapçığına bakın.
Aracımız ile neler yapabileceğinize ait bazı örnekler:
GUI Nasıl Çalışıyor
Front-end burada Mixer modu için Kullanıcı Arayüzü ve Solo modda nöral ağda ince ayarları kontrolcüsü olarak çalışmaktadır. Oluşturucunun tüm sürümleri için aynı ön uç kodu kullanıldığından, oluşturucu her sürümde çok geliştirildi. Katmanların işlevleri geliştirildi. Bu katmanlar, yapılandırılabilen ve bağımsız bir statik veya hareketli sanat parçası oluşturabilen ayrı bileşenlerdir. Ayrıca, GUI mantığı herhangi bir görsel sunumdan bağımsız olarak oluşturulur ve artık sonradan eklenebilir bir yapıya sahiptir. Bu sayede, GUI’i gelecekte herhangi bir kaydırıcı, düğme, giriş ve düğme görsel sağlayıcısına bağlanmak mümkün olacaktır.
Aracın yeni yetenekleri nasıl kullanılır?
Açılır menüden IntelliJ IDEA veya MPS gibi bir ürün seçtikten sonra, Prescribed düğmesini tıklamanız yeterlidir. Bu düğmeye tıkladığınızda bu ürünün ihtişamlı bir animasyona sahip açılış ekranı anında oluşturulur.
Mixer mode ile çalışma
İlk ekranda, her biri nöral ağ tarafından sizin için ayrı ayrı oluşturulan dokuz farklı görüntü görebilirsiniz. Buna Mixer mode diyoruz çünkü burada rastgele fikirlere gözatıp, beğendiğiniz birini seçebilir ve sizi yansıtan bir sanatı oluşturabilirsiniz.
Hiçbiri sizi yansıtmıyorsaRegenerate düğmesine tıklayabilir ve dokuz adet yeni görüntü elde edebilirsiniz. Regenerate düğmesine basmadan önce, lütfen sizin için halihazırda oluşturulmuş görüntülere her zaman ince ayar yapabileceğinizi unutmayın. İnce ayar yapma konusunu daha sonra derinlemesine inceleyeceğiz. Öte yandan, mevcut resimlerden bazılarını beğendiyseniz beğendiklerinize teker teker tıklayın ve Cross-breed düğmesine basın. Seçtiğiniz resimler kalacak ve seçtiklerinizin bir karışımı olan bazı yeni resimler üretilecektir. Mükemmel görüntüyü bulana kadar bu işlemi istediğiniz kadar tekrarlayın.
Ayrıca, nöral ağ tercihlerinize göre kendisini eğitir. Bu işleme, “kitle kaynak kullanımı” adını verebiliriz. Dünya gerçekten neyin güzel olduğunu bilir. Bu kolektif bilgiyi toplayarak ve birleştirerek, nöral ağ da neyin güzel olduğunu öğrenebilir. Mixer mode, jetbrainer kullanıcılarının seçimleri ile eğitilmiş bir nöral ağa sahiptir. Bunları kendi ağınızla karşılaştırabilir veya Trained by modundan serbest moda geçiş yaparak önceden eğitilmiş ağı devre dışı bırakabilirsiniz.
Tek görüntüyü ayarlama
Mixer mode‘da herhangi bir görüntüye çift tıklayarak Solo mode moduna geçiş yapabilir ve burada, yalnızca bu seçtiğiniz görüntünün tüm ince ayarlarını yapabilirsiniz. Sağ kısımdaki Neuro klasöründe, oynayabileceğiniz ve farklı şeyleri deneyebileceğiniz farklı kaydırıcılar ve onay kutucukları bulunur.
İstediğiniz zaman görüntüye çift tıklayarak Mixer mode‘a dönebilirsiniz.
Sahneyi kaydetme
Mükemmel görüntü kombinasyonunu paylaşmaya hazır olduğunuzda veya görüntüyü düzenlemeye daha sonra devam etmek isterseniz Get URL düğmesine basmanız yeterlidir. Bu işlem sonunda, tarayıcınızın adres çubuğunda mevcut eserinizi paylaşmak veya daha sonra geri dönmek için kullanabileceğiniz benzersiz bir URL oluşturacaktır.
Tek bir görüntüyü canlandırma
Solo modunda, Animate‘e basıp biraz bekleyin. Belki biraz daha beklemeniz gerekebilir. İşlem yoğunluğu nedeniyle sıraya alınabilirsiniz, bu durumda size sırada nerede olduğunuzu söyleriz. Sekmeyi kapatabilir ve daha sonra geri dönebilirsiniz. Sahneyi kaydettiğinizden emin olun ve son durumu kontrol etmek için tekrar Animate tuşuna basın. Eventually, you will get an animated video of your image. Moebius şeridi gibi sonsuzdur ve loop yapıdadır. Görüntünüzün statik versiyonuna geri dönmek için Back to static tuşuna basın.
Animasyonlu sahnenin URL’sini oluşturabilir ve bunu tüm dünyayla paylaşabilirsiniz.
Videoyu dışa aktarma
İsterseniz videonuzu .mp4 formatında dışa aktarabilirsiniz. Bu işlem, biraz sizi uğraştıracak ama çabalarınıza değdiğini göreceksiniz. Tabi ki de şaka yapıyoruz, Export Video‘ya basmanız yeterli olacaktır!
Animasyon için de aynı koşullar geçerlidir: Bir sıra ve bir render ilerleme çubuğu bulunur ancak oluşturma (render) işlemi sırasında sahneyi kaydetmek için bir URL oluşturabilir ve daha sonra geri gelip render’ın bitip bitmediğini bu URL üzerinden kontrol edebilirsiniz (Beklerken, tarayıcı sekmesini güvenle kapatabilirsiniz).
Kendinizi şanslı hissediyor musunuz?
Şansınızı denemek için I feel lucky düğmesine basın. Yapay ve zeki olmayan (non-intelligent) rastlantısallık, anında bir ayar kombinasyonu önerir. Rastgele ayarlar bile güzel bir şeyler üretebilir. Bu rastgele ayarlar, pek beğenmeyeceğiniz şeyler de üretebilir ama çoğu zaman güzeldir.
Teknik bilgiler
Sunucu tarafı teknik olarak birkaç parça ayrılmış durumdadır:
- TensorFlow ile oluşturulmuş nöral ağ tabanlı *görüntü oluşturma motoru.
- Görüntülerden videolar üreten video işleme (render) motoru.
- Sahneyi kaydetme.
- CPU ve GPU yoğun görevleri sunucu bileşenleri arasında dağıtmak için görev kuyruğu.
- Mixer mode: Oluşturulan görüntüleri genetik algoritmalar aracılığıyla geliştiren bir araç.
- Kullanıcıların tercihlerini analiz ederek hangi görüntülerin güzel olacağını tahmin eden görüntü oluşturma motorumuz ve Mixer mode‘unun üzerine inşa edilmiş başka bir nöral ağımız daha var.
*Nöral ağın kendisi, veriler üzerinde çalışan bilim insanlarına yönelik çevrimiçi çalışma alanı olan Datalore by JetBrains‘de oluşturulmuştur. Ağ mimarisi hakkında daha fazla bilgiye buradan ulaşabilirsiniz. Çalışma alanınızın kopyasını oluşturun ve model parametrelerini kendiniz deneyin.
Oluşturucuyu deneyerek eğlenin ve elde ettiğiniz sonuçları, sosyal medyada #code2art ve @JetBrains etiketleriyle paylaşın. Sanat eserlerinizi görmek için sabırsızlanıyoruz!
JetBrains
The Drive to Develop