Merhaba, Ziyaretçi. Lütfen giriş yapın veya üye olun.

Kullanıcı adınızı, parolanızı ve aktif kalma süresini giriniz

  Gelişmiş Arama
insanın içinde varsa, commodore.gen.tr açığa çıkarır bunu.. bir nevi retro olaylarının dolunayıyız.(Arda)
commodore.gen.trCommodoreCommodore GenelKoala formatında bol miktarda resim
Sayfa: 1 [2]   Aşağı git
Yazdır
Gönderen Konu: Koala formatında bol miktarda resim  (Okunma Sayısı 18187 defa)
0 Üye ve 1 Ziyaretçi konuyu incelemekte.
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #15 : Haziran 10, 2016, 18:55:56 ÖS »

YUV kullanacak olursan, U ve V değerlerini, kartezyen X ve Y olarak düşünür ve bir açı değeri elde edebilirsin. (Renk=atan2(V/U))
Bu ışık bilgisinden arınmış rengi verecektir. Aslında açı değeri yani.

Eldeki renge en yakın C64 paletindeki renk bu şekilde bulunabilir. Daha sonra C64 paletinde bulunan ve aynı U/V değerine sahip ama Y bilgisi farklı olan renklerden hangisine daha yakın olduğu da Y bilgisindeki farkın minimum olmasına bakılarak bulunabilir.

Örneğin C64 ün iki kırmızı değeri aynı U/V değerinde ama Y değerleri farklı.

Zaten C64 te 16 değil 8 farklı renk var. Kırmızı, Camgöbeği, Mor, Yeşil, Mavi, Sarı, Turuncu, Kahve... atan2(V/U) sonucu bu 8 renkten hangisine en yakın ise, o renk seçilip, sonra bu rengin C64'te varyasyonu var mı bakılabilir. Varyasyonu olan renkler ise, Açık kırmızı, Açık yeşil, Açık mavi...

Beyaz, Siyah ve gri tonlarında zaten renk bilgisi yok... Sadece Y değerine göre birinden biri seçilebilir.

Çok teorik oldu, aslında vakit bulursam akşama bende bir deneme yapayım. İlginç bir konu oldu bu en uygun rengi bulma işi... Bir de buna dither vb eklersek güzel bir tool çıkabilir. Hatta fli mode... Kahkaha

İyi çalışmalar,
Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #16 : Haziran 10, 2016, 23:02:25 ÖS »

Ben biraz birşeyler karaladım. Öncelikle bu en yakın rengi bulma konusunda aşağıdaki başlıklara bakmak lazım.

http://stackoverflow.com/questions/1720528/what-is-the-best-algorithm-for-finding-the-closest-color-in-an-array-to-another

Bir önceki postumda belirttiğim YUV yerine HSL color space kullanmak daha iyi sonuç veriyor sanırım. Bu şekilde yazmış amcalar. Hatta bir de HSL değerlerini bile değişik ağırlıklarla çarparak kıyaslama yapıyorlar.

Alıntı
Also, if it helps anyone else... I found the best results in my app when giving HUE a 47.5% importance, SATURATION a 28.75% importance, and BRIGHTNESS a 23.75% importance. – Albert Renshaw Jul 21 '13


Bir de bunlar var, yorumlar çok benzer...

http://stackoverflow.com/questions/1720528/what-is-the-best-algorithm-for-finding-the-closest-color-in-an-array-to-another

http://stackoverflow.com/questions/1678457/best-algorithm-for-matching-colours

Ha bir de buradan XYZ diye bir color space daha olduğunu öğrendik. Ama bunun da ötesinde renk eşleme konusunda ortak görüş sanırım en doğru color space'in CIE Lab colors olduğu yönünde.

Alıntı
Convert all of the colors to the CIE Lab color space and compute the distance in that space


Bu color space çevrimleri için güzel bir link:

http://www.easyrgb.com/index.php?X=MATH&H=07#text7

Neyse, lafı çok uzatmadan, şimdilik RGB, YUV ve XYZ için denemeler yapabileceğim küçük bir program yazdım. Her üç color space'de örnek bir imajı C64 renklerine çevirip sonuçlara baktım. Burada 8x8 bloktaki renk sınırlaması vb konular yok, sadece renk eşleme yönünden test ediyorum şu anda. Belki onlar sonradan yapılabilir.

Sonuçlar aşağıda:

Orjinal Görsel


RGB Color Space'de en yakın C64 renklerinin eşleştirilmesi


YUV Color Space'de en yakın C64 renklerinin eşleştirilmesi


XYZ Color Space'de en yakın C64 renklerinin eşleştirilmesi


Bana sanki XYZ color space en iyi sonucu verdi gibi geldi. Ama emin değilim. Henüz HSL ve CIE-Lab için çevrim kodunu yazmadım. O ikisini de yapıp final sonuca bakmak lazım...

EDIT:

Son olarak şöyle de bir site vardı. Bir amca bu konuya derinlemesine dalmış. Ama sprite ve interlacing kullandığı için bana çok uymadı çözüm. Kaynak kodları da yayınlamış.

http://www.syntiac.com/tech_ga_c64.html

Ve bir de şöyle bir site var ki daha önce nasıl görmemişim bilmiyorum. Oldukça başarılı.

http://c64.superdefault.com/

Benim örnek görselimi şu şekilde konvert etti:

« Son Düzenleme: Haziran 10, 2016, 23:51:53 ÖS Gönderen: delimawi » Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #17 : Haziran 11, 2016, 00:02:38 ÖÖ »

Yatıcam, yatamıyorum aklım kaldı. Kahkaha
Bir de photoshop ile denedim, C64 paletini indexed modda yaratıp orjinal görseli 160x200 olarak %90 dithering ile convert ettirdim. Daha sonra 320x200 e çevirdim. Dithering gerçekten çok iyi sonuç verdi. Gerçi tabiki bu halini bu şekilde C64'e atamayız, görselde 3 adet ortak renk belirlenmesi gerekiyr ve kart başına farklı tek bir renk kullanılabiliyor.

Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.122


Üyelik Bilgileri WWW
« Yanıtla #18 : Haziran 11, 2016, 03:07:01 ÖÖ »

Bense uyandım, görevi ben devralıiiim .)


Şu c63superdefault sitesini hemen bir denedim. Ne yazık ki bahsettiğim renk kayması sorunu onda da var:

Aşağıda test resmi olarak Alper Ocaklı'nın karikatürünü kullandım. İlki orijinali, 2.'si o siteninki. Dithering'e rağmen bir tek Hulk'ın sevebileceği kadar olmuş!

Bu arada, renkler arasındaki farkı minimize ederek en yakını bulma tekniği yüzünden ortaya çıkıyor bu sonuç. Her üç bileşendeki mutlak fark toplamı en az olduğunda o rengi bulmuş olmuyoruz, o intensity'deki en yakın rengi, arama yönüne göre local minima'da bulmuş oluyoruz.

O yüzden, şimdi şu vector space'i kodlamaya geçiyorum.

Not: .) = Tek gözü açık gülümseme olsun.


* alper00.jpg (71.91 KB, 729x549 - Görüntüleme: 1396 kez.)

* c64superdefault.png (12.7 KB, 320x200 - Görüntüleme: 1418 kez.)
Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.122


Üyelik Bilgileri WWW
« Yanıtla #19 : Haziran 11, 2016, 04:05:22 ÖÖ »

Bunda da (vektör uzayı yaklaşımında) precision engeline takıldık. Farklar çok ufak.

Önce nokta çarpımını alıyorum vektörlerin. Her bir vektör bir renk. Mesela (1,1,1) beyaz. (1,0,0) kırmızı gibi.

Arkasından, her iki vektörün (o noktadaki renk ve kıyasladığımız rengin vektörlerinin) vektör normlarını hesaplatıyorum. Yani değerlerinin karesinin toplamının karekökü. Ve son olarak nokta çarpımını bu iki norm vektör çarpımına böldürüyorum. Ne yazık ki, double precision'a rağmen arada kayıp oluyor ve çoğu kıyaslamanın sonucunda aradaki açının cosinüs'ü 1'e yakınsıyor.

Yarın bir de uyanık kafayla bakayım. Belki logaritmasını alarak vb. daha geniş aarlıklara dağılmasını sağlarım değerlerin.

Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.122


Üyelik Bilgileri WWW
« Yanıtla #20 : Haziran 11, 2016, 10:32:29 ÖÖ »

Çeşitli Kb Kr katsayılarıyla Y'CbCr renk kodlamasında karşılaştırmalar yaptırdım ve ya hep yeşile doğru koştu renkler ya da bazı diğer renkler baskın çıktı.

RGB'den Y'CbCr eldesi için şuradaki hesapları kullandım: https://en.wikipedia.org/wiki/YCbCr

Şimdilik duruyorum. Başka zaman yeni bir fikirle devam edilir artık.

Bu arada, Pepto'nun renk paleti bence yanlış. Sarı yok, kırmızı kahverengi olmuş vs. Herhalde başta teoriyi doğru oturtup, sonra Gamma düzeltmesini düzeltememe olarak yaptı.
« Son Düzenleme: Haziran 11, 2016, 10:36:36 ÖÖ Gönderen: ilkerficicilar » Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
Simon (Özay Turay)
Yönetici
*****
Mesaj Sayısı: 7.763


Commodore Forever


Üyelik Bilgileri WWW
« Yanıtla #21 : Haziran 11, 2016, 11:00:33 ÖÖ »

Bense uyandım, görevi ben devralıiiim .)
.
.
.
Aşağıda test resmi olarak Alper Ocaklı'nın karikatürünü kullandım.
Çok da uyanamamışsın sanki. Kahkaha
Logged

https://retrodergi.com - https://e-turay.com - https://karizmawow.e-turay.com

Retro: Commodore 64, Amiga 500, Amiga 1200
Retromsu: Wii, XBox360, XBox, PS3 Slim, PS2 FAT, PS1, PS Vita, Nintendo 3DS, Nintendo 2DS
LW3D
Yönetici
*****
Mesaj Sayısı: 11.415


Günü Kurtaran Avam Hiooargggh :)


Üyelik Bilgileri WWW
« Yanıtla #22 : Haziran 11, 2016, 11:04:10 ÖÖ »

Öylesine okuyoruz anlamasakta güzel
Logged

ilkerficicilar
Uzman
*****
Mesaj Sayısı: 1.122


Üyelik Bilgileri WWW
« Yanıtla #23 : Haziran 11, 2016, 12:13:34 ÖS »

Çok da uyanamamışsın sanki. Kahkaha

) Karikatürlerinden sonra soyadının da piksellerini bozmuşum. Kusura bakmıştır kesin...
Şimdi sakin olup elimdeki karikatürü yavaşça yerine bırakayım en iyisi
Logged

http://cbm.ficicilar.name.tr/ - Commodore Hacking
Levent (Lvnt)
Uzman
*****
Mesaj Sayısı: 2.390



Üyelik Bilgileri
« Yanıtla #24 : Haziran 11, 2016, 12:41:10 ÖS »

Şunların faydası olabilir

Bilgisayarda renkler nasıl yanlış kullanılıyor? Apple bile yapmış
https://m.youtube.com/watch?feature=youtu.be&v=LKnqECcg6Gw

Resimleri ascii'ye dönüştürme ile ilgili uzun bir yazı, renk dönüşümlerle ilgili denemeler var
http://sol.gfxile.net/textfx/index.html

Image spectrumizer, resimleri zx spectrum ekranında en iyi şekilde göstermek için, burada yapılan işe benziyor
http://sol.gfxile.net/spectrumizer/

Koala, zx spectrum, ascii görünüm için photoshop windows cs2 pluginler
http://sol.gfxile.net/files.html
Logged

Use the brute force, Luke
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 4.797


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #25 : Haziran 11, 2016, 13:20:25 ÖS »

Bu arada, Pepto'nun renk paleti bence yanlış. Sarı yok, kırmızı kahverengi olmuş vs. Herhalde başta teoriyi doğru oturtup, sonra Gamma düzeltmesini düzeltememe olarak yaptı.

Sarıyı bilemeyeceğim de makul bir süre Spectrum veya Amstrad kullanan birine sorarsan C64'de kırmızı hiç olmadı. 2 numaralı renk koyu kahverengiydi. 
Logged

eins
Uzman
*****
Mesaj Sayısı: 1.816


A.K.A. deliMawi


Üyelik Bilgileri
« Yanıtla #26 : Haziran 12, 2016, 00:48:48 ÖÖ »

Bu arada, Pepto'nun renk paleti bence yanlış. Sarı yok, kırmızı kahverengi olmuş vs. Herhalde başta teoriyi doğru oturtup, sonra Gamma düzeltmesini düzeltememe olarak yaptı.


Dün üzerinde çalışırken benim de aklıma bu geldi. Önce kendi sayfasında verdiği gamma correction yapılmadan önceki değerleri aldım. Sonra da netten bulduğum ir başka sayfadaki C64 palet görselinden doğrudan RGB değerlerini alıp bir plaet oluşturdum, kayda değer bir değişiklik olmadı. Şöyleki aşağıdaki görselde üst kısımdaki pepto nun paleti, aşağıdaki ise netten bulduğum bir diğer imajdan çıkardığım palet.



Benim görebildiğim kırmızıda biraz fark var, onun dışında oldukça yakınlar. Buradan pepto'nun doğru olduğu kanısına vardım.

Sarıyı bilemeyeceğim de makul bir süre Spectrum veya Amstrad kullanan birine sorarsan C64'de kırmızı hiç olmadı. 2 numaralı renk koyu kahverengiydi. 


Zaten bu hep konuşulur. Hakikaten de bence de C64'te ne doygun bir kırmızı var ne de sarı. Gel gelelim bence C64 paleti çok akıllıca hazırlanmış, demek isterdim ama sanırım bu sonuç biraz şans eseri olmuş ama çok da iyi olmuş. Çok güzel karışımlar elde edilebiliyor pixel art ile. Bir de kendine has hafif pastel bir tonu oluyor C64 görsellerinin. Gel gelelim, gerçek hayattan bir resim konvert edildiğinde uygun yakın renkler yok ortada.

Hani örneklemeyi RGB üzerinden verecek olursak, $FF0000 salt kırmızı yok, $00FF00 yok, $0000FF yok vb... Bana bir bilgisayar yapacağız, 8 renk hazırla deselerdi, doğrudan aşağıdaki renkleri seçerdim. (Tamamen mantık ve teknik bunu gerektiriyor. İşin sanatsal yada görsel tarafını düşünmezdim bile.)

$000000 Siyah
$0000FF Mavi
$00FF00 Yeşil
$FF0000 Kırmızı
$FFFF00 Sarı
$FF00FF Mor
$00FFFF Cam Göbeği
$FFFFFF Beyaz

16 renk olacaksa da gene benzer mantıkla ara değerlerden bir mantıksal dizilim yapardım. Şimdi spectruma bakalım. Aynen de mühendisler bu şekilde oluşturmuşlar paleti;



Burdaki kırmızıdan daha kırmızısı zaten yok. Salt ana rengi kullanmış.

Evet C64 palette bu şekilde bir salt kırmızı yok ama bence sonuç çok daha sanatsal olmuş.

Konuyu okuyup boş vakti olanlar aşağıdaki linke gözatabilirler. Çeşitli görsellerin C64 ve CPC paletlerinde nasıl göründükleri var. Bence özellikle C64 paletini tanıyan bir artist elinden çıkan işler çok daha iyi görünüyor diğer salt renklerin kullanıldığı paletlere kıyasla.

http://www.indieretronews.com/2016/02/is-c64-palette-far-superior-to-amstrad.html

Bu sayfadan bana çarpıcı gelen bir iki örnek (soldakiler C64 paleti);





Sizce de C64 paleti daha doğal ve hoş görünmüyor mu?

Son olarak C64 kırmızısına laf ediyoruz ama lütfen Aplle-II nin plaetine bakar mısınız?
Kırmızı gören var mı? Kahkaha



Alper'in karikatürlerini başarılı bir şekilde konvert edemedik, artık iyi bir C64 artistinin elinden öpücek anlaşılan şimdilik bu konu. Photoshop bile anca aşağıdaki sonucu üretti ki bu bile uygun değil, gene hulkvari arkadaş uzanmış yatakta. Yani ilerlesek, photshopa yetişsek bile bu tatminkar sonuç vermeyecek anlaşılan...



Logged

Doberman ♦ megaOne ♦ HDMI-64 ♦ HDMI-520 ♦ NewSchool
wizofwor
Genel Yönetici
*****
Mesaj Sayısı: 4.797


Gosub ile gidilen yerden goto ile dönen adam


Üyelik Bilgileri WWW
« Yanıtla #27 : Haziran 13, 2016, 19:48:51 ÖS »

C64 gafikerleri paletteki renklerin bu bahsettiğin uyumu/karışıtlığından çok faydalanırlar. Ten rengindeki gölgelendirmeler kullanılan diğer renklere göre bazen kahve bazen mavi tonlarıyla verilir. Aydınlık kısımlar da bazen pembe, bezen de yeşil, sarı veya beyazla verilir. Galiba bütün paleti saydım Kahkaha

Belki ten rengi için fotoğraf makinelerinde white balance gibi bir ayar düşünmek yapmak en doğrusu olabilir. Averaj ten rengi seçilip tonlamanın nasıl yapılacağıyla ilgili parametre verilebilir.

Bir kaç örnek resim:










Logged

Sayfa: 1 [2]   Yukarı git
Yazdır
Gitmek istediğiniz yer: