İmlecim beyazdan nasıl daha beyaz?


21

Geçenlerde imlecimin arka plan beyazından daha saf olduğunu fark ettim (saf 0xFFFFFF). Başlangıçta ekran görüntülerinin alınmasının hem arka planın hem de imlecin 0xFFFFFF'de olduğunu gösterdiğinden optik bir yanılsama olduğunu düşündüm. Sonra imlecin bir fotoğrafını çektim ve açıkça parlaklıkta bir fark gösteriyor:

Fotoğraf imleç

Ortalama parlaklığı daha iyi görmek için görüntüye bir mozaik filtre koydum:

İmleç mozaik filtreli fotoğraf

Okun içi yaklaşık 191 gri (0xBF) ve arka plan yaklaşık 177 gri (0xB1), yani imlecin beyazı arka planın saf beyazından yaklaşık% 8 daha parlak.

Hangi donanım bunu yapıyor ve nasıl? Renk bilgisi kanal başına 8 bitten fazla iletiliyor mu?

Bilgisayar, Samsung 5100 TV'ye HDMI kablosu ile bağlı bir NVIDEA GeForce 8500 GT grafik kartı bulunan Windows XP'dir.

Diğer fotoğraf:

İki imleç ve gölgeli bir kare

Bir donanım imleci, donanım imlecinin bir ekran görüntüsü ve her gri ölçeğinin 16x16 karesi, 2x2 bloklarda 0 ila 0xFF arasındadır.

İki imleç ve mozaik filtreli gölgeli bir kare

Önceki görüntü ile aynı, ancak mozaik filtresi uygulanmış. Fotoğraftaki imlecin hangisinin ve imlecin ekran görüntüsü olduğu açık olmalıdır. Bu sefer parlaklık 185 ve 170, hala yaklaşık% 8 fark. Bir renk seçici kullanarak, fotoğrafta 170 olan renk ekranda 0xFFFFFF olur. İmlecin kendisindeki renk seçiciyi kullanamıyorum çünkü doğrudan imlecin altındaki rengi örnekliyor.


Monitörünüzdeki parlaklık veya kontrast ayarlarıyla oynadınız mı?
Ron

1
Sorunun yukarıdaki resimleri, ham sencor görüntülerini işleyen herhangi bir kamera öğesi kullanılarak çekildiyse (hepsi ham dosya formatlarında saklandığında bile yapar) Sonra görsel sonuçlar kamera sencor verilerinin işlenmesi ile zaten değiştirilmiştir. Bu sorunu hafifletmek için bir "kontrol" elde etmek olacaktır. Beyaz arka plan üzerinde bir imleç imgesi var (işlenmiş ayrı bir imleç değil) ve nasıl farklı olduklarını gözlemleyin. Çeşitli yöntemleri kullanarak ve kontrolleri uygulayarak, nerede oluştuğunu varsayabilirsiniz.
Psycogeek

@Psycogeek Sanırım gözlerimdeki yazılım aynı şeyi yapıyor. Gözümün ham verilerine nasıl erişirim? Cidden, görüntüye yaptığım tek şey onu ilgili parçaya kırpmaktı. İmlecin ekran görüntüsünün görüntüsünü yanında gerçek imleçle yükleyebilirim, ancak daha önce açıkladığımdan daha aydınlatıcı olmazdı. Parlaklık (daha önce anladığım gibi), renk kanalı başına 0 ila 255 (0xFF) arasındadır. İmlecin içindeki beyaz aynı ölçekte olsaydı, kabaca 275 (0x113) olurdu ve bunu 8 bit'de kodlamak için yeterli yer yok.
CJ Dennis

@ user2714915 Parlaklığı veya kontrastı hiçbir yerde ayarlamadım ! Bu sorumun kalbine gerçekten gelmiyor: Grafik modum kanal rengi başına 8 bit olduğunda imleç 8 bit olarak kodlanabilen en parlak renkten nasıl daha parlak olabilir?
CJ Dennis

@CJDennis: Hangi programlar etkileniyor? Bu benim için bir gama kalibrasyon sorunu gibi görünüyor.
James P

Yanıtlar:


10

Psychogeek'in cevabında belirtildiği gibi, bu işletim sistemi tarafından renk profili ayarıyla ilgili bir sorundur.

Renk profilleri uygulama, işletim sistemi, ekran kartı ve ekran donanımı tarafından uygulanabilir.

Windows'taki OS renk profilleri için, video kartına gönderildiğinde renk profili imlece ekran görüntüsüne göre farklı şekilde uygulanır ve renk profili beyaz noktayı değiştirirse farklı renklere neden olabilir. Sizin durumunuzda, imleç gerçek beyaz olarak gönderilirken, alttaki görüntüye renk profili uygulanmış ve beyaz nokta daha düşük bir seviyeye değiştirilmiştir.

İmleç, görüntü kartının geri kalanından ayrı olarak video kartına gönderilir ve işleme gönderilmeden önce görüntü oluşturma sırasında daha sonraki bir aşamada video kartı tarafından karıştırılır.

Basitleştirilmiş düzeyde:

[Cursor Draw]   --   --   --   --   --   --   --
                                               ˅
[Windowing] --> [OS Profile] --> [Video Driver] --> [Video Card] --> [Hardware Profile] --> ...

Ekran görüntüsü, pencereleme aşamasında yakalandığından OS renk profilini "çekim" verilerine uygulamaz. Genellikle ekran görüntüsü yakalama imleci göstermez, çünkü OS profili uygulanmadan önce bile yakalar. Ancak, ekranı yakalamak için kullandığınızı düşündüğüm bazı araçlar, imleci görüntünün üzerinde video kartı gibi karıştırır. İmlecin ve arka planın beyaz seviyeleri% 100 olduğundan, ekran görüntüsü her ikisi için de aynı beyaz seviyeye sahiptir.

Gördüğünüz normal davranış, renk kalibrasyonu için donanım LUT'lu bir monitör veya ekran kartı kullanılarak veya imleç çiziminin farklı bir oluşturma noktasında gerçekleşmesi için zorlanarak düzeltilebilir , bu Photo.SE sorusuna bakın . Ayrıca imleç görüntüsünü düzenleyebilir ve sizi rahatsız ederse beyaz seviyesini değiştirebilirsiniz. Ancak imleci ekranda daha belirgin hale getirdiğini düşünüyorum.


İmlecin daha belirgin olduğunu kabul ediyorum. Beni rahatsız etmiyor, teknik olarak nasıl mümkün olabileceğini merak ediyordum. HDMI, kanal başına 8 bit'ten fazlasını mı taşıyor veya görüntünün geri kalanı (dijital sıkıştırmada değil, dijital sıkıştırmada değil) sıkıştırılıyor mu, böylece bazı seviyeler komşu düzeylerine eşit mi?
CJ Dennis

1
HDMI, büyük olasılıkla sizin durumunuzda kanal başına 8 bit olacak şekilde sıkıştırılmamış veriler taşır, ancak daha fazlasını taşıyabilir. Bu sorun HDMI sinyalinden önce oluşur
Richie Frame

tr.wikipedia.org/wiki/Uncompressed_video , HDMI'nın piksel başına 24, 30, 36 veya 48 bit (kanal başına 8, 10, 12 veya 16 bit) olabileceğinden bahseder. Yani sistemimdeki kanal başına 10 bit olarak gönderiliyorsa, imlecin beyazı 0x3FF iken "saf" beyaz kanal başına 0x3B3 olabilir. Bu, imleç için ekstra parlak renkler için yer açarken 256 8 bit seviyesinin de farklı olmasını sağlar. Bitişik seviyelerin çoğu 0x4'lük bir farka sahiptir, ancak birkaç tanesi sadece 0x3'tür.
CJ Dennis

Ekran kartınızı 10 bit kanallar verecek şekilde ayarladıysanız, 10 bittir, ancak durum böyle değildir
Richie Frame

NVIDIA kontrol panelinde parlaklığı ayarlamama izin veren bir ayar buldum. Sadece ekran görüntüsünü etkiler, imleci değil. Beyaz, tahminen yaklaşık 0xC0 olana kadar parlaklığı azaltabilirim, imleci gerçekten öne çıkarıyor! İletim kanalı başına bitler hakkında hiçbir şey göremiyorum.
CJ Dennis

1

Bu cevap, şeylerin neden dijitalle 1: 1 olmadığının bir analiziyle başlar ve gerçek sorunuza göre şeyleri değiştirmenin olası yolları ile biter.

  • Fotoğraf makinenizle bir resim çekin, tüm sensör verileri işlenir.
  • Sonra ölümüne sıkıştırılır.
  • Sonra bilgisayarınıza 1: 1 taşır.
  • Görüntülendiği yer, herhangi bir işletim sistemi renk profili tarafından ayarlanır.
  • Bir video kartına dijital olarak çizildiği yerde sadece kullanıcı tarafından ayarlanamaz, aynı zamanda kendi renk numaralarına da sahip olabilir.
  • Monitöre 1: 1 gönderildi.
  • Bir görüntü paneline yapmadan önce işlemede tamamen saldırıya uğrayabileceği yerler.
  • Ekran panelinin kendisi tüm yönlerini oluşturamıyor.
  • Arka aydınlatma renkleri, arka aydınlatmanın yaydığı renk spektrumuna bağlı olarak büyük yüzdelerle değişir.

Bu durumda, imleç (büyük olasılıkla) ekran kartı donanımına yerleştirilmiş bir donanım oluşturulmuş öğedir. Bakmak veya değiştirmek için ayarlamaya çalışmak için ilk şey monitör profili ve / veya OS uygulanan renk profilleri. Renk profilleri Kontrol panelinde, Tüm kontrol paneli öğelerinde, Renk Yönetimi'nde, monitöre ulaşmadan önce rengi değiştiren renk profillerini bulacaksınız.
Profiller devre dışı bırakılabilir, böylece sahip olduğu efekti gözlemleyebilirsiniz.

Video kartı yazılımındaki ayarlamalar. Masaüstü, 3D ve Video doğrudan çekilişlerinin tümü kontrol edilebilir, bunlar video kartı yazılımında ayarlanmamış olsa bile, hepsi 0 0 0'a ayarlanmış olsa bile, hala bazı işlemler var olabilir. Onunla uğraşmak için gerçek bir neden varsa, imleç katmanını eşleştirmek için kullanabilirsiniz.

Ekran kartı, donanım tarafından oluşturulan imleci üst üste bindiriyor ve arka planın geri kalanıyla aynı parametreleri kullanmıyor ve işte böyle çalışıyor.

- kontrol resmine dayanarak geri kalanların hiçbiri bu özel soru için geçerli değildir.

Başka bir olasılık monitör ayarlarıdır, ancak bu daha az olasıdır. Otomatik kontrast, monitörler ve TV'lerdeki otomatik renkli öğeler büyük parlak veya karanlık alanları dengeleyebilir ve genellikle istenmeyen değişikliklere neden olabilir. Monitörlerdeki otomatik renk ve seviyelendirme ayarları her zaman ayarlanabilir değildir ve yaptıkları işlemler için birçok farklı sevimli ad kullanırlar.

Oyun, film, masaüstü veya profiller için kullandıkları adlar gibi monitörlerdeki profiller, seçilen profil için yararlı gördükleri belirli renk ve kontrast ve parlaklık ayarlarını belirler ve yine uygun profil seçimleri için bile istenmeyen değişiklikler olabilir.

Kameradaki keskinleştirme algoritmaları, video ekran kartında değil, yine de monitörde, orijinal kontrastları artıran veya (elbette) azaltan alanların etrafında vurgulama matrisi oluşturabilir. Bu soruda, beyaz, 2 farklı işlem olmadıkça keskinleştirme matrisinin uygulanacağı piksellerin ötesine genişlediğinden daha az olasıdır.

Yazılımın gerçekte beyaz arka plana sahip olması gerekmediğinde liste daha da uzar, ayarlanabilir. İşletim sistemi ve programların beyaz olmayan bir arka planı olabilir, ancak orijinal masaüstü veya programda arka planın renk seçimini yaptıysanız bu soruda zaten böyle olmadığını biliyorsunuzdur.

Masaüstündeki renk seçimi, orada mevcut olan pikselin (veya piksellerin) rengini gösterir ve kullanıcıya programın neyi görüntülediği hakkında gerçekler sağlar. Renkli resim, herhangi bir renk profili çıktıyı ayarlamadan önce gelir. Bu nedenle renk toplama, gerçek rengi keşfetmenin harika bir yoludur. Sonra yine işlemden geçer.

İmleç overlaid ile ekran yakalama yapacak programlar var. bir kişi bir şeylerin renk seçimini yapabilir, ancak yine de imleç farklı bir yöntem kullanılarak çizilebilir ve geri kalanıyla aynı şekilde işlenebilir. Bu nedenle, ekranın dijital bir görüntüsünü yakalamak ve imleci dahil etmek mümkün olmakla birlikte, burada gerçekte görülenleri değiştirebilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.