Kamera ITS testleri

Bu sayfada, Android Uyumluluk Test Paketi (CTS) Doğrulayıcı'nın bir parçası olan Kamera Görüntüsü Test Paketi (ITS) kapsamındaki testlerin kapsamlı bir listesi verilmektedir. ITS testleri işlevsel testlerdir. Bu nedenle, görüntü kalitesini ölçmez ancak reklamı yapılan tüm kamera işlevlerinin beklendiği gibi çalıştığını gösterir. Bu belge, geliştiricilerin ve test uzmanlarının tek tek testlerin ne yaptığını ve test hatalarında nasıl hata ayıklama yapacaklarını anlamalarını sağlar.

Kamera ITS, testleri gerekli kamera özellikleri, API düzeyi ve medya performans sınıfı (MPC) düzeyine göre filtreler. ITS, API düzeyi için belirli bir API düzeyinde eklenen ve daha düşük API düzeylerindeki işlevlerde olumsuz kullanıcı deneyimlerini test eden testleri sınırlamak amacıyla ro.product.first_api_level kullanır. ITS, belirli bir API düzeyinde eklenen ve yeni donanım özelliği gerektiren özelliklerin testlerini kontrol etmek için ro.vendor.api_level kullanır. Bir cihaz için ro.odm.build.media_performance_class tanımlanmışsa ITS, MPC seviyesine bağlı olarak belirli testlerin çalıştırılmasını gerektirir.

Testler, sahneye göre aşağıdaki şekilde gruplandırılır:

  • scene0: Meta verileri, titreşimi, jiroskopu, titreşimi yakalama
  • scene1: Pozlama, hassasiyet, pozlama değeri (EV) telafisi, YUV ve JPEG ile RAW
  • scene2: Yüz algılama, renkli sahneler gerektiren testler
  • scene3: Kenar geliştirme, lens hareketi
  • scene4: En-boy oranı, kırpma, görüş alanı
  • scene5: Lens gölgelendirmesi
  • scene6: Yakınlaştırma
  • scene7: Çoklu kamera anahtarı
  • scene8: Otomatik pozlama (AE) ve otomatik beyaz dengesi (AWB) bölge ölçümü
  • scene9: JPEG sıkıştırması
  • scene_extensions: Kamera uzantıları
  • scene_tele: Telefoto lens değiştirme
  • scene_flash: Otomatik flaş, minimum kare hızı
  • scene_video: Kare düşmeleri
  • sensor_fusion: Kamera ve jiroskop zamanlama farkı
  • feature_combination: Özellik kombinasyonları
  • scene_ip: Varsayılan kamera uygulaması ile Jetpack Kamera Uygulaması (JCA) arasında görüntü eşliği

Her sahnenin açıklaması için ilgili bölüme bakın.

scene0

Testler için belirli bir sahne bilgisi gerekmez. Ancak jiroskop ve titreşim testi için telefonun sabit olması gerekir.

test_jitter

Kamera zaman damgalarındaki titremeyi ölçer.

Test edilen API'ler:

Geçti: Kareler arasında en az 30 ms fark vardır.

Aşağıdaki şekilde, küçük y ekseni aralığına dikkat edin. Bu grafikteki titreme aslında küçüktür.

test_jitter grafiği

Şekil 1. test_jitter grafiği.

test_metadata

Meta veri girişlerinin geçerliliğini, çekim sonuçlarına ve kamera özellikleri nesnelerine bakarak test eder. Bu testte, görüntü içeriği önemli olmadığı için auto_capture_request pozlama ve kazanç değerleri kullanılır.

Test edilen API'ler:

Geçti: Donanım düzeyi, rollingShutterSkew, frameDuration etiketleri, timestampSource, croppingType, blackLevelPattern, pixel_pitch, görüş alanı (FoV) ve hiperfokal mesafe mevcut ve geçerli değerlere sahip.

test_request_capture_match

Cihazın, çekim meta verilerini geri okuyarak doğru pozlama ve kazanç değerlerini yazdığını test eder.

Test edilen API'ler:

Geçti: İstek ve yakalama meta veri değerleri tüm çekimlerde eşleşiyor.

test_sensor_events

Sensör füzyonu desteği reklamı yapan cihazlarda bu test, cihazın sensör etkinliklerini sorgulayıp yazdırdığını kontrol eder. Beklenen sensörler; ivme ölçer, jiroskop ve manyetometredir. Bu test yalnızca ekran açıkken (cihaz bekleme modunda değilken) çalışır.

Test edilen API'ler:

Geçti: Her sensörün etkinlikleri alınır.

test_solid_color_test_pattern

Kamera kapatma için düz renkli test desenlerinin düzgün şekilde oluşturulduğunu test eder. Kameranın sessize alınması destekleniyorsa düz renkli test desenleri desteklenmelidir. Kameranın sesi kapatma özelliği desteklenmiyorsa düz renkli test desenleri yalnızca bu özellik reklamı yapılıyorsa test edilir.

Ham görüntüler destekleniyorsa renk atama da test edilir. Test edilen renkler siyah, beyaz, kırmızı, mavi ve yeşildir. Ham görüntüleri desteklemeyen kameralarda yalnızca siyah renk test edilir.

Test edilen API'ler:

Geçti: Desteklenen sabit test desenleri doğru renktedir ve görüntüde düşük varyans vardır.

test_test_pattern

Her geçerli test deseni için kareleri yakalamak üzere android.sensor.testPatternMode parametresini test eder ve karelerin düz renkler ve renk çubukları için doğru şekilde oluşturulduğunu kontrol eder. Bu test aşağıdaki adımları içerir:

  1. Desteklenen tüm test desenleri için resimler yakalar.
  2. Düz renkli test deseni ve renk çubukları için doğruluk kontrolü gerçekleştirir.

Test edilen API'ler:

Geçti: Desteklenen test kalıpları doğru şekilde oluşturuluyor.

test_test_patterns örneği

Şekil 2. test_test_patterns örneği.

test_tonemap_curve

Test deseninin doğrusal ton eşleme ile hamdan YUV'ye dönüştürülmesini test eder. Bu test, ton eşleme dönüşümü için mükemmel bir görüntü deseni oluşturmak üzere android.sensor.testPatternMode = 2 (COLOR_BARS) gerektirir. Ardışık düzenin, doğrusal ton eşleme ve ideal görüntü girişiyle uygun renk çıkışlarına sahip olduğunu doğrular (test_test_patterns'ya bağlıdır).

Test edilen API'ler:

Geçti: YUV ve RAW birbirine benziyor.

test_tonemap_curve ham örneği

Şekil 3. test_tonemap_curve ham örneği.

test_tonemap_curve YUV örneği

Şekil 4. test_tonemap_curve YUV örneği.

test_unified_timestamp

Resim ve hareket sensörü etkinliklerinin aynı zaman alanında olup olmadığını test eder.

Test edilen API'ler:

Geçti: Hareket zaman damgaları, iki resim zaman damgası arasındadır.

test_vibration_restriction

Cihazın titreşiminin beklendiği gibi çalışıp çalışmadığını test eder.

Test edilen API'ler:

Geçti: Cihaz, kamera ses kısıtlama API'si tarafından kapatıldığında titreşmiyor.

scene1_1

scene1 gri bir grafiktir. Gri grafik, kameranın görüş alanının ortadaki% 30'unu kaplamalıdır. Merkez bölgede özellik bulunmadığından gri grafiğin 3A'ya (AE, AWB ve AF) orta düzeyde meydan okuması beklenir. Ancak yakalama isteği, 3A'nın yakınlaşması için yeterli özellikler içeren tüm sahneyi belirtir.

RFoV kameralar, WFoV veya RFoV test düzeneğinde test edilebilir. Bir RFoV kamerası WFoV test düzeneğinde test edilirse 3A'nın yakınlaşmasına yardımcı olmak için FoV'daki gri grafik için bazı sınırlar belirtmek üzere grafik 2/3 oranında ölçeklendirilir. Kamera test düzeneği hakkında daha ayrıntılı açıklamalar için Camera ITS-in-a-box başlıklı makaleyi inceleyin.

scene1 örneği

5.şekil Tam boyutlu sahne1 grafiği (solda), 2/3 ölçekli grafik (sağda).

test_ae_precapture_trigger

Ön yakalama tetikleyicisi kullanılırken AE durum makinesini test eder. AE devre dışıyken beş manuel istek yakalar. Son istekte AE ön yakalama tetikleyicisi var. AE devre dışı olduğundan bu tetikleyici yoksayılmalıdır.

Test edilen API'ler:

Geçti: AE birleşiyor.

test_auto_vs_manual

Otomatik ve manuel çekimlerin yapıldığı testler aynı görünüyor.

Test edilen API'ler:

Geçti: Her yakalama sonucunda bildirilen manuel beyaz dengesi kazançları ve dönüşümleri, kameranın 3A algoritmasındaki otomatik beyaz dengesiyle estimate eşleşiyor.

test_auto_vs_manual otomatik örneği

Şekil 6. test_auto_vs_manual otomatik örnek.

test_auto_vs_manual white balance example

Şekil 7. Otomatik ve manuel beyaz dengesi karşılaştırması örneği.

test_auto_vs_manual manuel beyaz dengesi dönüştürme örneği

Şekil 8. test_auto_vs_manual manuel beyaz dengesi dönüştürme örneği.

test_black_white

Cihazın tamamen siyah beyaz görüntüler oluşturup oluşturmadığını test eder. İki çekim yapar. İlk çekimde kazanç son derece düşük ve pozlama kısa olduğundan siyah bir fotoğraf elde edilir. İkinci çekimde ise kazanç son derece yüksek ve pozlama uzun olduğundan beyaz bir fotoğraf elde edilir.

Test edilen API'ler:

Geçti: Siyah beyaz görüntüler üretir. Beyaz resimlerin doygun kanalları, %1'den az hata payıyla [255, 255, 255] RGB değerlerine sahiptir.

test_black_white, siyah beyaz örnek

Şekil 9. test_black_white, siyah örnek.

test_auto_vs_manual manuel beyaz dengesi dönüştürme örneği

Şekil 10. test_black_white, beyaz örnek.

test_black_white grafiği ortalama örneği

Şekil 11. test_black_white, plot means example.

test_burst_capture

Tüm yakalama hattının, tam boyutlu yakalama ve CPU süresinin hızına ayak uydurabildiğini doğrular.

Test edilen API'ler:

Geçti: Tam boyutlu görüntülerin patlamasını yakalar, kare düşmelerini ve görüntü parlaklığını kontrol eder.

test_burst_sameness_manual

Manuel çekim ayarıyla 50 görüntülük 5 çekim yapar ve tüm görüntülerin aynı olduğunu kontrol eder. Bu testi, farklı şekilde işlenen veya yapaylıklar içeren aralıklı kareler olup olmadığını belirlemek için kullanın.

Test edilen API'ler:

Başarılı: Resimler görsel olarak ve RGB değerleri açısından aynıdır.

Başarısız: Her patlamanın başında RGB ortalama grafiğinde ani bir yükseliş veya düşüş gösteriliyor.

  • first_API_level < 30 için tolerans% 3'tür.
  • first_API_level >= 30 için tolerans% 2'dir.

test_burst_sameness_manual_mean

Şekil 12. test_burst_sameness_manual ortalama örneği.

test_burst_sameness_manual_plot_means

Şekil 13. test_burst_sameness_manual_plot_means

test_crop_region_raw

RAW akışlarının kırpılamadığını test edin.

Test edilen API'ler:

Geçti: YUV resimler ortadan kırpılır ancak RAW resimler kırpılmaz.

test_crop_region_raw comp raw crop example

Şekil 14. test_crop_region_raw comp raw crop example.

test_crop_region_raw comp raw full example

Şekil 15. test_crop_region_raw comp raw full example.

test_crop_region_raw comp YUV kırpma örneği

Şekil 16. test_crop_region_raw comp YUV kırpma örneği.

test_crop_region_raw_yuv_full örneği

Şekil 17. test_crop_region_raw YUV tam örneği.

test_crop_regions

Kırpma bölgelerinin çalıştığını test edin. Tam bir görüntü alır ve beş farklı bölgenin (köşeler ve merkez) yamalarını oluşturur. Beş bölge için kırpma ayarı yapılmış resimler çeker. Yama ve kırpma görüntüsü değerlerini karşılaştırır.

Test edilen API'ler:

Başarılı: Kırpılan bölgenin resmi, kırpma resmine karşılık gelen yama ile eşleşiyor.

test_ev_compensation

Pozlama değeri (EV) telafisinin uygulanıp uygulanmadığını test eder. Test, temel ve ileri düzey olmak üzere iki bölümden oluşur.

Temel bölüm, EV telafisinin CONTROL_AE_COMPENSATION_STEP ile oluşturulan bir aralık kullanılarak uygulandığını test eder. Her telafi değerinde sekiz kare yakalanır.

Gelişmiş bölüm, sekiz adımda pozlamayı artırır ve ölçülen parlaklığı beklenen parlaklıkla karşılaştırır. Beklenen değerler, EV telafisi uygulanmamış görüntünün parlaklığı ve hesaplanan değerler gerçek görüntü değeri aralığını aşarsa beklenen değer doygun hale gelir. Beklenen değerler ile ölçülen değerler eşleşmezse veya resimler beş adım içinde aşırı pozlanırsa test başarısız olur.

Test edilen API'ler:

Temel bölüm geçişi: Resimler, beş adımda aşırı pozlama olmadan artan pozlamayı gösterir.

test_ev_compensation_basic

Şekil 18. test_ev_compensation_basic.

Gelişmiş bölüm geçişi: EV telafisi ayarı arttıkça parlaklıkta artış yakalar. Her EV telafisi ayarı için çekilen sekiz karede sabit parlaklık değerleri bulunur.

test_ev_compensation_advanced_plot_means

Şekil 19. test_ev_compensation_advanced_plot_means.

test_exposure_x_iso

ISO ve pozlama süresi değiştiğinde sabit pozlama elde edilen testler. ISO ve pozlama süresinin birbirini dengeleyecek şekilde seçildiği bir dizi çekim yapar. Sonuçlar aynı parlaklığa sahip olmalıdır ancak dizideki görüntü daha fazla gürültü içermelidir. Örnek piksel ortalama değerlerinin birbirine yakın olduğunu doğrular. Resimlerin 0 veya 1'e sabitlenmediğini (bu durumda resimler düz çizgiler gibi görünür) doğrular. Test, yapılandırma dosyanızda debug işaretini ayarlayarak RAW resimlerle de çalıştırılabilir.

Test edilen API'ler:

Geçti: Görüntülerin parlaklığı aynı ancak ISO değeri yükseldikçe daha fazla gürültü oluşuyor. RGB düzlemleri, ISO*pozlama değeri test edilen kazanç alanı boyunca sabit olduğunda düzdür.

Arıza mekanizması: Aşağıdaki şekilde, kazanç çarpanı değerleri (x ekseni) arttıkça normalleştirilmiş RGB düzlemi ortalama değerleri (y ekseni) düşük kazanç çarpanı değerlerinden sapmaya başlar.

test_exposure_plot_means

Şekil 20. test_exposure_plot_means.

test_exposure_mult=1.00.jpg

Şekil 21. test_exposure_mult=1.00.

test_exposure_mult=64.00

Şekil 22. test_exposure_mult=64.00.

test_latching

Bu ayarların (pozlama ve kazanç) FULL ve LEVEL_3 kameralar için doğru kareye kilitlendiğini test edin. Arka arkaya istekler kullanarak bir dizi çekim yapar ve çekimler arasında yakalama isteği parametrelerini değiştirir. Resimlerin beklenen özelliklere sahip olup olmadığını kontrol eder.

Test edilen API'ler:

Geçti: [2, 3, 6, 8, 10, 12, 13] numaralı resimlerin ISO'su veya pozlaması artırılmış ve aşağıdaki şekildeki grafikte daha yüksek RGB ortalamalarıyla gösterilmiştir.

test_latching plot means örneği

Şekil 23. test_latching grafiği, örnek anlamına gelir.

test_latching i=00

Şekil 24. test_latching i=00.

test_latching i=01

Şekil 25. test_latching i=01.

test_latching i=02

Şekil 26. test_latching i=02.

test_latching i=03

Şekil 27. test_latching i=03.

test_latching i=04

Şekil 28. test_latching i=04.

test_latching i=05

Şekil 29. test_latching i=05.

test_latching i=06

Şekil 30. test_latching i=06.

test_latching i=07

Şekil 31. test_latching i=07.

test_latching i=08

Şekil 32. test_latching i=08.

test_latching i=09

Şekil 33. test_latching i=09.

test_latching i=10

Şekil 34. test_latching i=10.

test_latching i=11

Şekil 35. test_latching i=11.

test_latching i=12

Şekil 36. test_latching i=12.

test_linearity

Cihazda işleme, doğrusal piksellere dönüştürülebilir. Cihaz, tek renkli bir hedefe doğrultulmuşken bir dizi çekim yapar.

Test edilen API'ler:

Geçti: R, G, B değerleri, hassasiyet arttıkça doğrusal olarak artmalıdır.

test_linearity grafiği ortalama örneği

Şekil 37. test_linearity grafiği, ortalama örneği.

test_locked_burst

3A kilidini ve YUV patlamasını (otomatik ayarı kullanarak) test eder. Bu test, MANUAL_SENSOR veya PER_FRAME_CONTROLS bulunmayan sınırlı cihazlarda bile geçecek şekilde tasarlanmıştır. Test, kare hızı kontrolü CTS'de yapılırken YUV görüntü tutarlılığını kontrol eder.

Test edilen API'ler:

Geçti: Yakalamalar tutarlı görünüyor.

test_locked_burst frame0 example

Şekil 38. test_locked_burst frame0 örneği.

test_locked_burst frame1 example

Şekil 39. test_locked_burst frame1 örneği.

test_locked_burst_frame2

Şekil 40. test_locked_burst frame2 örneği.

scene1_2

scene 1_2, scene 1_1 ile işlevsel olarak aynıdır ve scene 1'nin uzun süresini azaltmak için alt sahne yapısını kullanır.

test_param_color_correction

android.colorCorrection.* parametrelerinin ayarlandığında uygulandığını test eder. Farklı dönüştürme ve kazanç değerleriyle çekimler yapar ve bunların buna uygun şekilde farklı göründüğünü test eder. Dönüşüm ve kazançlar, çıktının giderek daha kırmızı veya mavi olması için seçilir. Doğrusal bir ton eşleme kullanır.

Ton eşleme, yüksek dinamik aralıklı görüntülerin görünümünü daha sınırlı bir dinamik aralığa sahip bir ortamda yaklaştırmak için görüntü işlemede kullanılan bir tekniktir. Bu teknikte, bir renk grubu başka bir renk grubuyla eşlenir.

Test edilen API'ler:

Geçti: Dönüşüme göre R ve B değerleri artırılır.

test_param_color_correction grafiği, ortalama örneği anlamına gelir

Şekil 41. test_param_color_correction grafiği, ortalama örneği anlamına gelir.

Aşağıdaki şekillerde x ekseni, yakalama istekleridir: 0 = birleştirme, 1 = kırmızı artırma ve 2 = mavi artırma.

test_param_color_correction req=0 unity örneği

Şekil 42. test_param_color_correction req=0 unity örneği.

test_param_color_correctness req=1 red boost example

Şekil 43. test_param_color_correctness req=1 kırmızı güçlendirme örneği.

test_param_color_correction req=2 blue boost example

Şekil 44. test_param_color_correction req=2 mavi artırma örneği.

test_param_flash_mode

android.flash.mode parametresinin uygulanıp uygulanmadığını test eder. Pozlamayı manuel olarak koyu tarafa ayarlar. Böylece flaşın patlayıp patlamadığı açıkça anlaşılır ve doğrusal bir ton eşleme kullanılır. Flaşın patlayıp patlamadığını doğrulamak için oluşturulan büyük bir gradyan olup olmadığını görmek üzere merkezi karo resmiyle kontrol eder.

Test edilen API'ler:

Geçti: Döşeme resminin ortasında büyük bir renk geçişi var. Bu, flaşın patladığı anlamına gelir.

test_param_flash_mode 1 örneği

Şekil 45. test_param_flash_mode 1 örneği.

test_param_flash_mode 1 kutucuk örneği

Şekil 46. test_param_flash_mode bir kutucuk örneği.

test_param_flash_mode_2 örneği

Şekil 47. test_param_flash_mode 2 örneği.

test_param_flash_mode 2 kutucuk örneği

Şekil 48. test_param_flash_mode iki kutulu örneği.

test_param_noise_reduction

android.noiseReduction.mode parametresinin ayarlandığında doğru şekilde uygulanıp uygulanmadığını test eder. Kamerayla loş ışıkta görüntü yakalama Çekilen görüntünün gürültülü olmasını sağlamak için yüksek analog kazanç kullanır. NR kapalı, hızlı ve yüksek kaliteli olmak üzere üç görüntü yakalar. Ayrıca, düşük kazanç ve NR kapalıyken bir görüntü yakalar ve bunun varyansını temel değer olarak kullanır. Sinyal-gürültü oranı (SNR) ne kadar yüksek olursa görüntü kalitesi de o kadar iyi olur.

Test edilen API'ler:

Geçiş: SNR, farklı gürültü azaltma modlarına göre değişir ve aşağıdaki grafikteki gibi davranır:

test_param_noise_reduction grafiği SNR örnekleri

Şekil 49. test_param_noise_reduction grafiği, SNR örneklerini gösterir.

0: KAPALI, 1: HIZLI, 2: YÜKSEK KALİTE, 3: MİNİMUM , 4: ZSL

test_param_noise_reduction high gain nr=0 example

Şekil 50. test_param_noise_reduction yüksek kazançlı nr=0 örneği.

test_param_noise_reduction high gain nr=1 example

Şekil 51. test_param_noise_reduction high gain nr=1 örneği.

test_param_noise_reduction high gain nr=2 example

Şekil 52. test_param_noise_reduction yüksek kazançlı nr=2 örneği.

test_param_noise_reduction high gain nr=3 example

Şekil 53. test_param_noise_reduction yüksek kazançlı nr=3 örneği.

test_param_noise_reduction düşük kazanç örneği

Şekil 54. test_param_noise_reduction düşük kazanç örneği.

test_param_shading_mode

android.shading.mode parametresinin uygulanıp uygulanmadığını test eder.

Test edilen API'ler:

Geçti: Gölgeleme modları değiştiriliyor ve lens gölgeleme haritaları beklendiği gibi değiştiriliyor.

test_param_shading_mode lens gölgelendirme haritası, mod 0 döngü 0 örneği

Şekil 55. test_param_shading_mode lens gölgelendirme haritası, mod 0 döngü 0 örneği.

test_param_shading_mode lens gölgelendirme haritası, mod 1 döngü 0 örneği

Şekil 56. test_param_shading_mode lens gölgelendirme haritası, mod 1 döngü 0 örneği.

test_param_shading_mode lens gölgelendirme haritası, mod 2 döngü 0 örneği

Şekil 57. test_param_shading_mode lens gölgelendirme haritası, mod 2 döngü 0 örneği.

test_param_tonemap_mode

android.tonemap.mode parametresinin uygulanıp uygulanmadığını test eder. Her R, G, B kanalına farklı ton eşleme eğrileri uygular ve çıkış resimlerinin beklendiği gibi değiştirildiğini kontrol eder. Bu test, test1 ve test2 olmak üzere iki testten oluşur.

Test edilen API'ler:

Geçiş:

  • test1: Her iki resimde de doğrusal ton eşleme var ancak n=1 daha dik bir renk geçişine sahip. n=1 resminde G (yeşil) kanalı daha parlaktır.
  • test2: Aynı ton eşleme, ancak farklı uzunluk. Resimler aynı.

n=0 ile test_param_tonemap_mode

n=0 ile Şekil 58. test_param_tonemap_mode.

n=1 ile test_param_tonemap_mode

n=1 ile Şekil 59. test_param_tonemap_mode.

test_post_raw_sensitivity_boost

Ham hassasiyet artışını kontrol eder. Farklı hassasiyetlere sahip bir dizi RAW ve YUV görüntüsü yakalar, RAW hassasiyet artışı kombinasyonunu yayınlar ve çıkış piksel ortalamasının istek ayarlarıyla eşleşip eşleşmediğini kontrol eder.

Test edilen API'ler:

Geçti: Yükseltme arttıkça RAW görüntüler koyulaşır, YUV görüntülerin parlaklığı ise sabit kalır.

test_post_raw_sensitivity_boost raw s=3583 boost=0100 example

Şekil 60. test_post_raw_sensitivity_boost raw s=3583 boost=0100 örneği.

test_post_raw_sensitivity_boost raw s=1792 boost=0200 example

Şekil 61. test_post_raw_sensitivity_boost raw s=1792 boost=0200 örneği.

test_post_raw_sensitivity_boost raw s=0896 boost=0400 example

Şekil 62. test_post_raw_sensitivity_boost raw s=0896 boost=0400 örneği.

test_post_raw_sensitivity_boost raw s=0448 boost=0800 example

Şekil 63. test_post_raw_sensitivity_boost raw s=0448 boost=0800 example.

test_post_raw_sensitivity_boost raw s=0224 boost=1600 example

Şekil 64. test_post_raw_sensitivity_boost raw s=0224 boost=1600 örneği.

test_post_raw_sensitivity_boost raw s=0112 boost=3199 example

Şekil 65. test_post_raw_sensitivity_boost raw s=0112 boost=3199 örneği.

test_post_raw_sensitivity_boost ham plan anlamı örneği

Şekil 66. test_post_raw_sensitivity_boost ham grafiği, ortalama örneği ifade eder.

test_post_raw_sensitivity_boost YUV s=0112 boost=3199 example

Şekil 67. test_post_raw_sensitivity_boost YUV s=0112 boost=3199 örneği.

test_post_raw_sensitivity_boost YUV s=0448 boost=0800 example

Şekil 68. test_post_raw_sensitivity_boost YUV s=0448 boost=0800 example.

test_post_raw_sensitivity_boost YUV s=0896 boost=0400 example

Şekil 69. test_post_raw_sensitivity_boost YUV s=0896 boost=0400 örneği.

test_post_raw_sensitivity_boost YUV s=1792 boost=0200 örneği

Şekil 70. test_post_raw_sensitivity_boost YUV s=1792 boost=0200 örneği.

test_post_raw_sensitivity_boost YUV s=3585 boost=0100 example

Şekil 71. test_post_raw_sensitivity_boost YUV s=3585 boost=0100 örneği.

test_post_raw_sensitivity_boost_yuv_plot_means

Şekil 72. test_post_raw_sensitivity_boost_yuv_plot_means

test_raw_exposure

Pozlama süresi artan bir dizi ham görüntü yakalar ve piksel değerlerini ölçer.

Test edilen API'ler:

Geçer: ISO'nun (kazanç) artırılması, pikselleri ışığa karşı daha hassas hale getirir. Bu nedenle, grafik sola doğru hareket eder.

test_raw_exposure ISO=55 örneği

Şekil 73. test_raw_exposure ISO=55 örneği.

10⁰ 1 ms, 10¹ 10 ms ve 10⁻¹ 0, 1 ms'dir.

test_raw_exposure ISO=132 örneği

Şekil 74. test_raw_exposure ISO=132 örneği.

test_raw_exposure ISO=209 örneği

Şekil 75. test_raw_exposure ISO=209 örneği.

test_raw_exposure ISO=286 örneği

Şekil 76. test_raw_exposure ISOs=286 örneği.

test_raw_exposure ISO=363 örneği

Şekil 77. test_raw_exposure ISO=363 örneği.

test_raw_exposure_s=440

Şekil 78. test_raw_exposure ISO=440 örneği.

test_reprocess_noise_reduction

Yeniden işleme istekleri için android.noiseReduction.mode uygulanan testler. Kameranın ışığı azken yeniden işlenmiş görüntüleri yakalar. Yakalanan görüntünün gürültülü olduğunu doğrulamak için yüksek analog kazanç kullanır. NR kapalı, hızlı ve yüksek kalite için üç yeniden işlenmiş görüntü yakalar. Düşük kazançlı ve NR kapalı olarak yeniden işlenmiş bir görüntü yakalar ve bunun varyansını referans değeri olarak kullanır.

Test edilen API'ler:

Geçti: FAST >= OFF, HQ >= FAST ve HQ >> OFF.

Tipik SNR ile NR modu grafiği

Şekil 79. Tipik SNR ile NR modu grafiği örneği.

test_tonemap_sequence

Farklı ton eşleme eğrileriyle çekim dizisini test eder. Doğrusal ton eşleme ile 3 manuel çekim yapar. Varsayılan ton eşleme ile 3 manuel çekim yapar. Birbirini izleyen her kare çifti arasındaki farkı hesaplar.

Test edilen API'ler:

Geçti: Üç özdeş kare ve ardından farklı bir üç özdeş kare grubu var.

test_tonemap_sequence i=0 example

Şekil 80. test_tonemap_sequence i=0 örneği.

test_tonemap_sequence i=1 example

Şekil 81. test_tonemap_sequence i=1 örneği.

test_tonemap_sequence i=2 example

Şekil 82. test_tonemap_sequence i=2 örneği.

test_tonemap_sequence i=3 example

Şekil 83. test_tonemap_sequence i=3 örneği.

test_tonemap_sequence_i=4 örneği

Şekil 84. test_tonemap_sequence i=4 örneği.

test_tonemap_sequence i=5 example

Şekil 85. test_tonemap_sequence i=5 örneği.

test_yuv_jpeg_all

Görüntü yakalama için bildirilen tüm boyut ve biçimlerin çalıştığı testler. image_processing_utils modülü tarafından dönüştürüldüğünde YUV ve JPEG'nin aynı görünmesi için doğrusal ton eşlemeli manuel istek kullanır. Resimler varsayılan olarak kaydedilmez ancak debug_mode seçeneği etkinleştirilerek kaydedilebilir.

Test edilen API'ler:

Geçti: Tüm görüntü merkezleri, en yüksek çözünürlüklü YUV görüntünün% 3'ü ile RGB'ye dönüştürülmüş görüntülerde en fazla ortalama karesel hata (RMS) (bir sinyalin değeri) farkına sahiptir.

test_yuv_jpeg_all örneği

Şekil 86. test_yuv_jpeg_all örneği.

test_yuv_plus_dng

Resim yakalama için bildirilen boyutların ve biçimlerin çalıştığını test eder.

Test edilen API'ler:

Geçti: Test tamamlanır ve istenen resimler döndürülür.

test_yuv_plus_dng örneği

Şekil 87. test_yuv_plus_dng örneği.

scene1_3

scene 1_3, scene 1_1 ile işlevsel olarak aynıdır ve scene 1'nin uzun süresini azaltmak için alt sahne yapısını kullanır.

test_capture_result

Geçerli verilerin CaptureResult nesnelerinde döndüğünü test eder. Test; otomatik çekim, manuel çekim ve ikinci bir otomatik çekimden oluşur.

Test edilen API'ler:

Geçti: Meta veriler tüm çekimler için geçerlidir ve manuel ayarlar ikinci otomatik çekime sızmaz. Çekimler için lens gölgelendirme düzeltmesini planlar.

test_capture_result_plot_lsc_auto_ch0

Şekil 88. test_capture_result_plot_lsc_auto_ch0.

test_dng_noise_model

DNG ham model parametrelerinin doğru olduğunu doğrular. Grafikte, çeşitli hassasiyetlerde çekilen ham fotoğraflardaki gri kartın merkez yamasının ölçülen varyansı gösterilir ve bu değerler, kamera HAL'sindeki DNG gürültü modeli tarafından her hassasiyette beklenen varyansla (yakalama sonucu nesnelerinde döndürülen O,S parametrelerine göre) karşılaştırılır. DNG gürültü modeli hakkında daha ayrıntılı bilgi için DNG Gürültü Modeli ile ilgili aşağıdaki belgeyi indirin.

Test edilen API'ler:

Geçti: DNG ham model parametreleri doğru. Beklenen RGB değerleri, ölçülen gerçek RGB değerleriyle eşleşir.

test_dng_noise_model_plog

Şekil 89. test_dng_noise_model_plog.

test_jpeg

YUV görüntülerini ve cihaz JPEG görüntülerini dönüştüren testler aynı görünüyor. Test, görüntünün ortasındaki% 10'luk kısmı alır, RGB değerini hesaplar ve bu değerlerin eşleştiğini doğrular.

Test edilen API'ler:

Geçti: Her resim arasındaki ortalama RGB farkı %3'ten azdır.

test_jpeg_fmt=jpg.jpg

Şekil 90. test_jpeg_fmt=jpg.jpg.

test_jpeg=fmt=yuv.jpg

Şekil 91. test_jpeg=fmt=yuv.jpg.

test_raw_burst_sensitivity

Artan kazançlarla bir dizi ham görüntü yakalar ve gürültüyü ölçer. Yalnızca ham görüntüleri seri çekim olarak yakalar.

Test edilen API'ler:

Geçti: Kazanç arttığı için her çekim, bir öncekinden daha gürültülü.

Merkez istatistikleri ızgara hücresinin varyansını kullanır.

test_raw_burst_sensitivity_variance

Şekil 92. test_raw_burst_sensitivity_variance.

test_raw_sensitivity

Artan hassasiyetlerle bir dizi ham görüntü yakalar ve görüntünün ortasındaki% 10'luk alandaki gürültüyü (varyans) ölçer. Her çekimin bir öncekinden daha gürültülü olduğunu test eder.

Test edilen API'ler:

Geçiş: Varyans her çekimde artar.

test_raw_sensitivity_variance

Şekil 93. test_raw_sensitivity_variance.

test_yuv_plus_jpeg

Tek bir kareyi hem YUV hem de JPEG çıkışı olarak yakalamayı test eder. image_processing_utils modülü tarafından dönüştürüldüğünde YUV ve JPEG'nin aynı görünmesi için doğrusal ton eşlemeli manuel istek kullanır.

Test edilen API'ler:

Geçti: YUV ve JPEG resimleri benzerdir ve RMS (bir sinyalin değeri) farkı% 1'den azdır.

JPEG biçimli test_yuv_plus_jpeg

Şekil 94. JPEG biçiminde test_yuv_plus_jpeg.

YUV biçimli test_yuv_plus_jpeg

YUV biçimindeki Şekil 95. test_yuv_plus_jpeg.

test_yuv_plus_raw

Destekleniyorsa tek bir kareyi hem ham (10 bit ve 12 bit ham) hem de YUV çıkışları olarak yakalamayı test eder. Doğrusal ton eşleme ile manuel istek kullanıldığından ham ve YUV değerlerinin aynı olması beklenir. RGB'ye dönüştürülmüş resimlerin merkezdeki% 10'luk RGB değerlerini karşılaştırır. Günlüklerandroid.shading.mode.

Test edilen API'ler:

Geçti: YUV ve ham görüntüler benzerdir ve% 3,5'ten daha az RMS (bir sinyalin karesi alınmış ortalama değeri) farkı vardır.

test_yuv_plus_raw_shading=1_raw.jpg

Şekil 96. test_yuv_plus_raw_shading=1_raw.jpg.

test_yuv_plus_raw_shading=1_yuv.jpg

Şekil 97. test_yuv_plus_raw_shading=1_yuv.jpg.

test_sensitivity_priority

Daha yüksek ISO ile artan gürültü seviyeleri arasında bir korelasyon olduğunu doğrulamak için çeşitli ISO ayarlarında CONTROL_AE_PRIORITY_MODE_SENSOR_SENSITIVITY_PRIORITY testler yapın.

Test edilen API'ler:

Geçti: Daha yüksek ISO, gürültü seviyelerinin artmasına neden olur.

Test atlama ölçütleri

Aşağıdaki ölçütlerden herhangi biri karşılanırsa test_sensitivity_priority.py testi atlanır:

test_exposure_time_priority

ISO'nun telafi edebileceği aralıkta sabit parlaklık olup olmadığını kontrol ederek CONTROL_AE_PRIORITY_MODE_SENSOR_EXPOSURE_TIME_PRIORITY farklı pozlama sürelerinde testler yapın.

Test edilen API'ler:

Başarılı: ISO telafi aralığındaysa parlaklık, pozlama süreleri boyunca sabittir (tolerans dahilinde).

Test atlama ölçütleri

Aşağıdaki ölçütlerden herhangi biri karşılanırsa test_exposure_time_priority testi atlanır:

scene2_a

scene2_a, gri arka plan ve nötr renkli kıyafetler giyen üç yüz içeriyor. Yüzler, çeşitli cilt tonlarına sahip olacak şekilde seçilir. Yüz algılama özelliğinin optimum düzeyde çalışması için grafiğin doğru yönde olması gerekir.

scene2_a örneği

Şekil 98. scene2_a örneği.

test_autoframing

Kamera cihazının otomatik çerçeveleme davranışını test eder. Sahnedeki yüzlerin hiçbiri görünmeyecek şekilde büyük bir yakınlaştırma yapar, AUTOFRAMING değerini CaptureRequest içinde True olarak ayarlayarak otomatik çerçeveleme modunu etkinleştirir ve durum yakınlaştığında (yani AUTOFRAMING_STATE değeri CaptureResult içinde AUTOFRAMING_STATE_CONVERGED olarak ayarlandığında) orijinal sahnedeki tüm yüzlerin algılanıp algılanmadığını doğrular.

Test edilen API'ler:

Geçti: Üç yüzün tamamı algılandı.

test_display_p3

Testler Display P3 ColorSpaceProfiles API'si kullanılarak JPEG biçiminde yakalama. Yakalanan JPEG'in başlığında uygun bir ICC profili olup olmadığını ve resmin sRGB gamının dışında renkler içerip içermediğini test eder.

Test edilen API'ler:

Geçti: JPEG, Display P3 ICC profili ve sRGB gamının dışındaki renkleri içeriyor.

test_effects

Desteklenen kamera efektleri için kare yakalar ve bunların doğru şekilde oluşturulup oluşturulmadığını kontrol eder. Test yalnızca OFF ve MONO efektlerini kontrol eder ancak desteklenen tüm efektler için resimleri kaydeder.

Test edilen API'ler:

Geçiş: Sahne görüntüsünü OFF efektleriyle ve efektleri MONO olarak ayarlanmış tek renkli bir görüntüyle yakalar.

test_effects_MONO

Şekil 99. test_effects_MONO.

test_exposure_keys_consistent

Bu testte, AE'nin etkin olduğu bir çekimin ortalama parlaklığı, AE'nin devre dışı olduğu ve pozlama parametrelerinin (hassasiyet, pozlama süresi, kare süresi, ham sonrası hassasiyet artışı) manuel olarak uygulandığı bir çekimle karşılaştırılır. Bu parametreler, AE'nin etkin olduğu çekimin CaptureResult bölümünde alınır.

Test edilen API'ler:

Geçti: İki çekim arasındaki parlaklıkta göreli fark %4'ten azdır.

test_format_combos

Farklı çıkış biçimi kombinasyonlarını test eder.

Test edilen API'ler:

Başarılı: Tüm kombinasyonlar başarıyla yakalandı.

test_num_faces

Yüz algılamayı test eder.

Test edilen API'ler:

Geçti: Üç yüz bulur.

test_num_faces yüz algılama modu 1 örneği

Şekil 100. test_num_faces yüz algılama modu 1 örneği.

test_reprocess_uv_swap

YUV yeniden işlemenin U ve V düzlemlerini değiştirmediği testler. Bu, yeniden işlenen görüntü ile yeniden işlenmemiş bir çekim arasındaki mutlak farkların toplamı (SAD) hesaplanarak tespit edilir. Yeniden işlenen yakalamanın çıkış U ve V düzlemlerinin değiştirilmesi SAD'nin artmasına neden oluyorsa çıkışın doğru U ve V düzlemlerine sahip olduğu varsayılır.

Test edilen API'ler:

Geçti: U ve V düzlemleri değiştirilmez.

test_reprocess_uv_swap

Şekil 101. test_reprocess_uv_swap örneği.

scene2_b

test_preview_num_faces

Yüz sahnelerinde cilt tonu çeşitliliğini artırarak önizlemede yüz algılamayı test eder.

Test edilen API'ler:

Geçti: Yüz sınırlama kutularında yüz işaret noktaları olan üç yüz bulur.

test_num_faces_fd_mode_1

Şekil 102. test_num_faces yüz algılama modu 1 örneği.

test_yuv_jpeg_capture_sameness

1920x1440 çözünürlüğü aşmayan en büyük JPEG biçimiyle aynı en boy oranına sahip, en büyük ortak YUV ve JPEG biçimlerini kullanarak iki görüntü yakalar. jpeg.quality değerini 100 olarak ayarlar ve çift yüzeyli bir istek yakalar. Her iki resmi de RGB dizilerine dönüştürür ve iki resim arasındaki 3D karesi alınmış ortalama (RMS) farkını hesaplar.

Ayrıca bu test, desteklenen tüm akış kullanım alanlarının YUV çıkışlarının, STILL_CAPTURE kullanım alanıyla YUV çıkışına makul ölçüde benzer olduğunu doğrular.

Test edilen API'ler:

Geçti: STILL_CAPTURE kullanım alanına yönelik YUV ve JPEG resimler, %3'ten daha az RMS (bir sinyalin ortalama karekök değeri) farkına sahiptir. Desteklenen tüm kullanım alanlarına yönelik YUV resimler, STILL_CAPTURE kullanım alanına yönelik YUV resimlerden% 10'dan daha az RMS farkına sahiptir.

scene2_c

test_num_faces

Yüz sahnelerinde cilt tonu çeşitliliği artırılarak yüz algılama test edilir.

Test edilen API'ler:

Geçti: Üç yüz bulur.

test_num_faces_fd_mode_1

Şekil 103. test_num_faces yüz algılama modu örneği.

test_jpeg_capture_perf_class

CDD'deki 2.2.7.2 Kamera bölümünde belirtildiği gibi S performans sınıfı için JPEG yakalama gecikmesini test eder.

Geçti: Birincil kameraların her ikisi için de ITS aydınlatma koşulları (3000K) altında CTS kamera PerformanceTest ile ölçülen 1080p çözünürlükte kamera2 JPEG yakalama gecikmesi < 1000 ms OLMALIDIR.

test_camera_launch_perf_class

CDD'de bölüm 2.2.7.2 Kamera'da belirtildiği gibi S performans sınıfı için kamera başlatma gecikmesini test eder.

Geçti: Birincil kameraların her ikisi için de ITS aydınlatma koşulları (3000 K) altında CTS kamera PerformanceTest ile ölçülen camera2 başlatma gecikmesi (kamerayı ilk önizleme karesine açma) < 600 ms olmalıdır.

test_default_camera_hdr

CDD'nin 2.2.7.2 Kamera bölümünde belirtildiği gibi, varsayılan kamera yakalamanın performans sınıfı 15 için Ultra HDR olup olmadığını test eder.

Geçti: Varsayılan kamera paketi yakalama, performans sınıfı 15 cihaz için Ultra HDR OLMALIDIR.

scene2_d

test_preview_num_faces

Yüz sahnelerinde cilt tonu çeşitliliğini artırarak önizlemede yüz algılamayı test eder.

Test edilen API'ler:

Geçti: Yüz sınırlama kutularında yüz işaret noktaları olan üç yüz bulur.

scene2_e

test_continuous_picture

50 VGA çözünürlüklü kare, yakalama isteği ilk ayarıyla yakalanır. android.control.afMode = 4 (CONTINUOUS_PICTURE).

Test edilen API'ler:

Geçti: 3A sistemi, 50 karelik çekimin sonunda yerleşir.

test_num_faces

Yüz sahnelerinde cilt tonu çeşitliliği artırılarak yüz algılama test edilir.

Test edilen API'ler:

Geçti: 3 yüz bulur.

scene2_f

scene2_f, beyaz arka plan ve beyaz kıyafetlerle üç yüze sahip. Yüzlerde çok çeşitli cilt tonları ve arka planla yüksek kontrast var.

scene2_f örneği

Şekil 104. scene2_f örneği.

test_preview_num_faces

Yüz sahnelerinde cilt tonu çeşitliliği artırılarak yüz algılama test edilir.

Test edilen API'ler:

Geçti: Yüz sınırlama kutularında yüz işaret noktaları olan üç yüz bulur.

test_num_faces_fd_mode_1

Şekil 105. test_num_faces_fd_mode_1 örneği.

scene2_g

scene2_g, beyaz arka plan ve beyaz kıyafetlerle üç profil yüzüne sahip. Yüzlerde geniş bir ten rengi aralığı ve arka planla yüksek kontrast vardır.

scene2_g.png

Şekil 106. scene2_g örneği.

test_preview_num_faces

Yüz sahnelerinde cilt tonu çeşitliliği artırılarak yüz algılama test edilir.

Test edilen API'ler:

Geçti: Yüz sınırlama kutularında yüz işaret noktaları olan üç yüz bulur.

test_preview_num_faces

Şekil 107. test_preview_num_faces örneği.

scene3

scene3, ISO12233 tablosunu kullanır ve çoğu test, sahnedeki tabloyu bulmak için tablo ayıklama yöntemini kullanır. Bu nedenle, kaydedilen resimlerin çoğu 1, 2 veya 4. sahne resimlerindeki gibi kenarlıklara sahip değildir, yalnızca grafik vardır. Grafik bulucunun optimum şekilde çalışması için grafiğin doğru yönde olması gerekir.

test_edge_enhancement

android.edge.mode parametresinin doğru şekilde uygulandığını test eder. Her kenar modu için yeniden işlenmeyen görüntüleri yakalar ve çıkış görüntüsünün netliğini ve yakalama sonucu meta verilerini döndürür. Belirli bir kenar modu, hassasiyet, pozlama süresi, odak mesafesi ve çıkış yüzeyi parametresiyle yakalama isteğini işler.

Geçti: HQ modu (2), OFF modundan (0) daha keskindir. FAST modu (1) OFF modundan daha keskindir. HQ modu, FAST modundan daha keskin veya ona eşittir.

Test edilen API'ler:

Etkilenen kamera parametreleri:

  • EDGE_MODE

test_edge_enhancement_edge=0

Şekil 108. test_edge_enhancement edge=0 örneği.

test_edge_enhancement edge=1 example

Şekil 109. test_edge_enhancement edge=1 (hızlı mod) örneği.

test_edge_enhancement edge=2 örneği

Şekil 110. test_edge_enhancement edge=2 (yüksek kaliteli mod) örneği.

test_flip_mirror

Resmin, CDD'deki 7.5.2 Ön Yüz Kamerası bölümünde belirtildiği şekilde doğru yönlendirildiğini test eder.

Aynalanmış, ters çevrilmiş veya döndürülmüş resimler, merkeze yakın konumdaki elmas özelliğiyle tanımlanabilir.

Geçti: Resim çevrilmemiş, yansıtılmamış veya döndürülmemiştir.

test_flip_mirror sahne düzeltme eki örneği

Şekil 111. test_flip_mirror sahne düzeltme eki örneği.

test_imu_drift

Cihaz hareketsizken ve yüksek çözünürlüklü önizleme yakalarken atalet ölçüm biriminin (IMU) 30 saniye boyunca sabit çıkış verip vermediğini test eder.

Test edilen API'ler:

Geçiş:

  • Jiroskopun kayması, test süresi boyunca 0,01 rad'dan azdır.
  • Jiroskop okumasının varyansı, test süresi boyunca 1E-7 rad2/s2/Hz değerinden düşüktür.
  • Dönüş vektörünün kayması, test süresi boyunca 0,01 rad'dan azdır.
  • (Henüz zorunlu değil) Jiroskopun kayması saniyede 1 dereceden az olmalıdır.

test_imu_drift jiroskop kayması örneği

Şekil 112. test_imu_drift jiroskop sapması örneği.

test_imu_drift rotation vector drift example

Şekil 113. test_imu_drift döndürme vektörü kayma örneği.

test_landscape_to_portrait

Yataydan dikeye geçiş geçersiz kılma işlevinin yatay yönlü sensörlerde doğru şekilde çalışıp çalışmadığını test eder.

Test edilen API'ler:

Geçti: Test, beklenen döndürmeye (yataydan dikeyye geçiş geçersiz kılındığında 0 derece, etkinleştirildiğinde 90 derece) sahip bir grafik bulur.

test_landscape_to_portrait örneği

Şekil 114. test_landscape_to_portrait örneği.

test_lens_movement_reporting

Lens hareketi işaretinin düzgün şekilde bildirilip bildirilmediğini test eder. İlk 12 kare optimum odak mesafesinde (3A tarafından belirlendiği şekilde), son 12 kare ise minimum odak mesafesinde olmak üzere 24 resimlik bir seri çeker. 12. kare civarında lens hareket ediyor ve bu da keskinliğin düşmesine neden oluyor. Lens son konuma hareket ederken keskinlik sonunda dengelenir.

Keskinliğin, lensin optimum odak mesafesinde sabit olduğu ilk birkaç karedeki ve lensin minimum odak mesafesinde sabit olduğu son birkaç karedeki keskinlik arasında olduğu tüm karelerde lens hareketi işareti onaylanmalıdır. Lensi hareket ettiren tam kare önemli değildir. Önemli olan, lens hareket ederken hareket işaretinin onaylanmasıdır.

Test edilen API'ler:

Geçti: Lens hareketi işareti, keskinlik değişikliği olan karede True.

Hata mekanizmaları:

  • lens_moving: True (android.hardware.camera2.CaptureResult#LENS_STATE = 1) in test_log.DEBUG yalnızca keskinliğin değişmediği karelerde onaylanır.
  • lens_moving: False (android.hardware.camera2.CaptureResult#LENS_STATE = 0) olan karelerde test_log.DEBUG, optimum odak uzaklığındaki ilk birkaç kareye veya minimum odak uzaklığındaki son birkaç kareye kıyasla keskinlik farkı vardır.

test_reprocess_edge_enhancement

Kenar geliştirme için desteklenen yeniden işleme yöntemlerinin düzgün çalışıp çalışmadığını test eder. Belirli bir yeniden işleme kenar moduyla bir yakalama isteğini işler ve yeniden işleme kenar modları devre dışı bırakılmışken yakalamak için farklı modları karşılaştırır.

Test edilen API'ler:

Geçti: Farklı kenar modlarının keskinliği doğru. HQ (mod 2), OFF (mod 0) modundan daha keskindir ve farklı modlar arasındaki iyileştirme benzerdir.

test_reprocess_edge_enhancement grafiği örneği

Şekil 115. test_reprocess_edge_enhancement grafiği örneği.

scene4

scene4, bir karenin içindeki beyaz arka plan üzerinde siyah bir daireden oluşur.

scene4'teki testler hizalamaya duyarlı olabilir. Bu nedenle, Android 15'ten itibaren DUT ve grafik hizalamasının kontrolünü etkinleştirmek için tools dizininde check_alignment.py kullanabilirsiniz.

scene4 örneği

Şekil 116. scene4 örneği.

test_30_60fps_preview_fov_match

30 FPS ve 60 FPS önizleme videolarının aynı görüş alanına sahip olup olmadığını test eder. Testte biri 30 FPS, diğeri 60 FPS olmak üzere iki video çekilir. Her videodan temsili bir kare seçilir ve iki videodaki görüş alanı değişikliklerinin spesifikasyonlar dahilinde olup olmadığı doğrulanmak için analiz edilir. Dairenin en-boy oranının sabit kaldığını, dairenin merkezinin sabit kaldığını ve dairenin yarıçapının sabit kaldığını test eder.

Test edilen API'ler:

Geçti: Resimler genişletilmiyor, resimlerin merkezi %3'ten fazla farklılık göstermiyor ve 30 FPS ile 60 FPS videolar arasındaki maksimum en boy oranı değişikliği %7,5'ten fazla değil.

Hata mekanizmaları:

  • 30 FPS'lik videodaki daire, 60 FPS'lik videodaki daireden boyut olarak önemli ölçüde farklı.
  • Çekilen resimdeki daire, işleme hattı nedeniyle bozuluyor.
  • Çekilen resimdeki daire, resmin yüksekliğini veya genişliğini azaltan aşırı bir en boy oranı yakalama isteği nedeniyle kırpılıyor.
  • Çekilen resimdeki dairenin ortasında yansıma var ve daire tam dolu görünmüyor.

test_aspect_ratio_and_crop

Resimlerin, resim işlem hattında bozulup bozulmadığını veya beklenmedik şekilde kırpılıp kırpılmadığını test eder. Tüm biçimlerdeki bir dairenin fotoğrafını çeker. Dairenin bozulmadığını, resmin merkezinden hareket etmediğini ve farklı en-boy oranları veya çözünürlüklerle boyutunun yanlış şekilde değişmediğini doğrular.

Test edilen API'ler:

Geçti: Resimler gerilmez, resimlerin merkezi %3'ten fazla farklılık göstermez ve mümkün olan maksimum FoV korunur.

Hata mekanizmaları:

  • Kamera, çekilen sahnenin ortasında tablette gösterilen daireyle aynı hizada değil.
  • Çekilen resimdeki daire, işleme hattı nedeniyle bozuluyor.
  • Düşük çözünürlüklü görüntü, görüntü işlem hattında iki kez kırpılarak yüksek ve düşük çözünürlüklü görüntüler arasında farklı bir görüş alanı oluşturulur.
  • Çekilen resimdeki daire, resmin yüksekliğini veya genişliğini azaltan aşırı bir en boy oranı yakalama isteği nedeniyle kırpılıyor.
  • Çekilen resimdeki dairenin ortasında yansıma var ve daire tam dolu görünmüyor.

test_multi_camera_alignment

Çok kameralı sistemlerde kamera konumlandırmayla ilgili kamera kalibrasyon parametrelerini test eder. Çoklu kamera fiziksel alt kameralarını kullanarak fiziksel kameralardan biriyle fotoğraf çeker. Daire merkezini bulur. Daire merkezini her kamera için dünya koordinatlarına yansıtır. Kameraların daire merkezleri arasındaki farkı dünya koordinatlarında karşılaştırır. Dünya koordinatını piksel koordinatına yeniden yansıtır ve geçerlilik kontrolü olarak orijinallerle karşılaştırır. Kameraların odak uzaklıklarının farklı olup olmadığını kontrol ederek daire boyutlarını karşılaştırır.

Test edilen API'ler:

Geçti: Yansıtılan görüntülerde daire merkezleri ve boyutları, kamera kalibrasyon verileri ve odak uzaklıkları kullanılarak çekilen görüntülere kıyasla beklendiği gibidir.

Hata mekanizmaları:

  • LENS_INTRINSIC_CALIBRATION, LENS_POSE_TRANSLATION ve LENS_POSE_ROTATION değerleri tasarım değerleridir ve gerçek kalibrasyon verileri değildir.
  • Kamera sistemi, test kurulumu için uygun değildir. Örneğin, RFoV test düzeneğiyle geniş ve ultra geniş kamera sistemi test ediliyordur. Daha fazla bilgi için Camera ITS-in-a-box SSS Q1 bölümüne bakın.

test_preview_aspect_ratio_and_crop

Hareketsiz çekimler için test_aspect_ratio_and_crop testine benzer şekilde, desteklenen önizleme biçimlerini kontrol ederek önizleme karelerinin uygunsuz şekilde uzatılmadığını veya kırpılmadığını doğrular. Dairenin en boy oranının değişmediğini, kırpılan resimlerde dairenin karenin ortasında kaldığını ve sabit bir biçimde veya farklı çözünürlüklerde (FoV kontrolü) daire boyutunun değişmediğini doğrular.

Test edilen API'ler:

Geçti: Resimler gerilmez, resimlerin merkezi %3'ten fazla farklılık göstermez ve mümkün olan maksimum FoV korunur.

test_preview_stabilization_fov

Görüş alanının uygun şekilde kırpıldığından emin olmak için desteklenen önizleme boyutlarını kontrol eder. Testte biri önizleme sabitleme ON, diğeri önizleme sabitleme OFF ile olmak üzere iki video çekilir. Her videodan temsili bir kare seçilir ve iki videodaki görüş alanı değişikliklerinin spesifikasyon dahilinde olup olmadığı doğrulanmak için analiz edilir.

Test edilen API'ler:

Geçti: Dairenin en boy oranı yaklaşık olarak sabit kalır, dairenin merkez konumu sabit kalır ve dairenin boyutu en fazla %20 değişir.

test_video_aspect_ratio_and_crop

Tüm video biçimlerinde kare içindeki bir dairenin videolarını çeker. Anahtar kareleri ayıklar ve dairenin en boy oranının değişmediğini, kırpılan resimlerde dairenin merkezde kaldığını ve daire boyutunun sabit bir biçimde veya farklı çözünürlükte (FoV kontrolü) değişmediğini doğrular.

Test edilen API'ler:

Geçti: Video kareleri genişletilmiyor, karelerin merkezi %3'ten fazla farklılık göstermiyor ve mümkün olan maksimum FoV korunuyor.

scene5

scene5, eşit şekilde aydınlatılmış gri bir sahne gerektirir. Bu işlem, kamera merceğinin üzerine yerleştirilen bir difüzörle gerçekleştirilir. Aşağıdaki difüzörü kullanmanızı öneririz: www.edmundoptics.com/optics/window-diffusers/optical-diffusers/opal-diffusing-glass/46168.

Sahneyi hazırlamak için kameranın önüne bir difüzör takın ve kamerayı yaklaşık 2.000 lüks bir ışık kaynağına doğru tutun. scene5 için çekilen görüntülerde belirgin özelliklerin olmadığı dağınık bir ışıklandırma gerekir. Aşağıda örnek bir resim verilmiştir:

scene5 örneği

Şekil 117. scene5 yakalama örneği.

test_lens_shading_and_color_uniformity

Lens gölgelendirme düzeltmesinin uygun şekilde uygulandığını ve tek renkli düzgün bir sahnenin renginin eşit şekilde dağıtıldığını test eder. Bu testi, otomatik 3A ile bir YUV çerçevesinde gerçekleştirir. Lens gölgelendirmesi, y kanalına göre değerlendirilir. Belirtilen her örnek blok için ortalama y değerini ölçer ve merkez y değeriyle karşılaştırarak başarılı veya başarısız olduğunu belirler. Renk tekdüzeliği testi, kırmızı-yeşil ve mavi-yeşil alanında değerlendirilir.

Test edilen API'ler:

Geçti: Testin geçmesi için resmin belirtilen yarıçapında kırmızı-yeşil ve mavi-yeşil değerinin varyansı% 20'den az olmalıdır.

scene6

scene6, benzersiz şekilde tanımlanabilen ArUco işaretlerinden oluşan bir ızgaradır. scene6 içindeki testler hizalamaya duyarlı olabilir. Bu nedenle, 15'ten itibaren, DUT ve grafik hizalamasının kontrolünü etkinleştirmek için araçlar dizininde check_alignment.py kullanabilirsiniz.

scene6

Şekil 118. scene6 örneği.

test_in_sensor_zoom

Kameranın sensör içi yakınlaştırma özelliğinin davranışını test eder. Bu özellik, kırpılmış ham görüntüler üretir.

Akış kullanım alanı CROPPED_RAW olarak ayarlandığında test, yakınlaştırma aralığında iki çekim yapar: tam FoV ham görüntü ve kırpılmış ham görüntü. Test, görüntüleri RGB dizilerine dönüştürür, tam boyutlu kırpılmış ham görüntüyü SCALER_RAW_CROP_REGION tarafından bildirilen boyuta küçültür ve iki görüntü arasındaki 3D RMS farkını hesaplar.

Test edilen API'ler:

Geçti: Ölçeği küçültülmüş kırpılmış ham görüntü ile tam FoV ham görüntü arasındaki 3D RMS farkı, testte belirlenen eşikten daha azdır.

test_zoom

Ultra geniş lensten geniş lense geçişte kamera yakınlaştırma davranışını test eder. Yakınlaştırma aralığında çekim yapar ve kamera yakınlaştırıldığında ArUco işaretçilerinin büyüyüp büyümediğini kontrol eder. Test ayrıca merkez işaretçinin konumunun her yakalama işleminde tahmin edilebilir şekilde değişip değişmediğini de kontrol eder. Merkez işaretçinin merkezinden görüntü merkezine olan mesafe, fiziksel kamera geçişine kadar yakınlaştırma oranıyla ilgili olarak sabit bir hızda değişebilir veya fiziksel kamera geçişinden sonra aynı işaretçinin konumuna doğru monoton bir şekilde değişebilir. Testten önce cihaza Jetpack Camera App (JCA) yüklenmelidir.

Test edilen API'ler:

Geçti: Kameranın doğru şekilde yakınlaştırdığını doğrulamak için yakalanan ArUco işaretçisinin göreceli boyutu, istenen yakınlaştırma oranıyla karşılaştırıldığında doğru olmalıdır. Ayrıca, işaretçi ile görüntü merkezi arasındaki mesafe, test açıklamasında belirtilen ölçütlere göre değişmelidir.

Merkeze en yakın ArUco işaretçisinin konturunu bulmak için test_zoom

Merkeze en yakın ArUco işaretçisinin konturunu bulmak için Şekil 119. test_zoom.

test_low_latency_zoom

Kameranın düşük gecikmeli yakınlaştırma davranışını test eder. android.control.settingsOverride = 1 (SETTINGS_OVERRIDE_ZOOM) ile yakınlaştırma aralığında çekim yapar ve çıkış görüntülerindeki işaretçilerin, çekim meta verilerindeki yakınlaştırma oranlarıyla eşleşip eşleşmediğini kontrol eder. 3A'yı yakınlaştırmak ve çekim yapmak için aynı kamera çekimi oturumu kullanılır.

Test edilen API'ler:

Geçti: Yakalanan işaretçinin göreli boyutu, yakınlaştırma oranı sonuç meta verilerine göre doğrudur.

test_preview_video_zoom_match

Kaydederken ve yakınlaştırırken video önizlemesi ile video çıkışının aynı çıkışı gösterip kaydettiği testler. Farklı yakınlaştırma oranlarında merkeze en yakın işaretçinin boyutunu hesaplar ve yakınlaştırma oranı arttıkça işaretçinin boyutunun artıp artmadığını kontrol eder.

Test edilen API'ler:

Geçti: Yakalanan işaretçinin göreli boyutu, videoda ve önizlemede istenen yakınlaştırma oranıyla doğru orantılıdır.

HD_1280x720_key_frame.png

Şekil 120. HD_1280x720_key_frame.png (yakınlaştırmadan önce).

preview_1280x720_key_frame.png

Şekil 121. preview_1280x720_key_frame.png (yakınlaştırmadan önce).

HD_1280x720_key_frame_zoomed.png

Şekil 122. HD_1280x720_key_frame.png (yakınlaştırmadan sonra).

preview_1280x720_key_frame_zoomed.png

Şekil 123. preview_1280x720_key_frame.png (yakınlaştırmadan sonra).

test_preview_zoom

Her önizleme karesinin yakınlaştırma oranının, ultra geniş lensten geniş lense karşılık gelen yakalama meta verileriyle eşleştiği testler. Test, yakınlaştırma aralığındaki önizleme karelerini alır ve merkeze en yakın ArUco işaretçisini bulur. Ardından test, merkez işaretçinin konumunun her yakalama işleminde tahmin edilebilir şekilde değişip değişmediğini kontrol eder. Merkez işaretçinin merkezinden görüntü merkezine olan mesafe, fiziksel kamera geçişine kadar yakınlaştırma oranıyla ilgili olarak sabit bir hızda değişebilir veya fiziksel kamera geçişinden sonra aynı işaretçinin konumuna doğru monoton bir şekilde değişebilir.

Test edilen API'ler:

Geçti: Seçilen ArUco işaretçisinin göreli boyutu, önizleme karelerinin tümünde ilgili yakalama sonucunun bildirilen yakınlaştırma oranı için doğrudur. Seçilen işaretçinin resmin merkezine olan göreceli uzaklığı, tüm önizleme karelerinin ilgili yakalama sonucunun bildirilen yakınlaştırma oranı için doğrudur.

Merkeze en yakın seçili işaretçiyi gösteren test_preview_zoom resimleri

Merkeze en yakın işaretçinin seçildiği Şekil 124. test_preview_zoom resimleri

test_session_characteristics_zoom

CameraCharacteristics#INFO_SESSION_CONFIGURATION_QUERY_VERSION bölümünde listelenen tüm desteklenen oturum yapılandırmaları için yakınlaştırma oranı aralığını test eder. Bu yapılandırmaların her biri için CameraDeviceSetup#isSessionConfigurationSupported true değerini döndürürse test, CameraDeviceSetup#getSessionCharacteristics içinde döndürülen yakınlaştırma oranı aralığına ulaşılabildiğini doğrular.

Test edilen API'ler:

Geçti: CameraCharacteristics#INFO_SESSION_CONFIGURATION_QUERY_VERSION bölümünde listelenen her desteklenen SessionConfiguration için hem minimum hem de maksimum yakınlaştırma oranına ulaşılabilir.

scene7

scene7, her biri farklı bir renkle doldurulmuş dört eşit çeyrek daireye bölünmüş dikdörtgen bir çerçevedir. Dikdörtgenin ortasında, keskinlik kontrolleri için eğimli kenarlı bir grafik yer alır. Dört ArUco işaretçisi, dikdörtgenin dört dış köşesiyle hizalanarak farklı yakınlaştırma oranlarında ana dikdörtgen çerçevesinin doğru koordinatlarının elde edilmesine yardımcı olur.

scene7

Şekil 125. scene7.

test_multi_camera_switch

Bu test, farklı yakınlaştırma oranlarında önizleme kaydı sırasında ultra geniş (UW) ve geniş (W) lensler arasında geçiş yapıldığında benzer RGB değerleri elde edildiğini doğrular.

Test, dinamik önizleme kaydı yapmak ve fiziksel kameranın değiştiği noktayı belirlemek için önceden tanımlanmış aralıkta farklı yakınlaştırma oranları kullanır. Bu nokta, UW'den W lense geçişi gösterir.

Geçiş noktasında ve öncesinde çekilen kareler otomatik pozlama (AE), otomatik beyaz dengesi (AWB) ve otomatik odaklama (AF) açısından analiz edilir.

AE kontrolü, parlaklık değişikliğinin hem UW hem de W lens görüntüleri için beklenen aralıkta olduğunu doğrular. AWB kontrolü, kırmızı-yeşil ve mavi-yeşil oranlarının hem UW hem de W lens görüntüleri için eşik değerleri içinde olduğunu doğrular. AF kontrolü, UW ve W lens görüntüleri arasındaki ortalama gradyan büyüklüğüne göre netlik tahmini değerini değerlendirir.

Bu testi yürütürken Moire efekti sonuçları etkiliyorsa Camera ITS onaylı tabletler listesinden daha yüksek çözünürlüklü bir tablet kullanın.

Test edilen API'ler:

Geçti: Testin başarılı olması için AE ve AWB kontrollerinin başarılı olması gerekir. AF kontrolü sonuçları yalnızca günlük kaydı amacıyla kullanılır. Her bir kontrolün ölçütleri şunlardır:

  • AE kontrolü: Cihaz hem ae_regions hem de awb_regions değerini destekliyorsa UW ve W lens görüntüleri arasındaki parlaklık değişikliği (Y değeri), tüm renk yamaları için% 4'ten az olmalıdır. Yalnızca ae_regions destekleniyorsa yalnızca gri renk yaması değerleri ölçütleri karşılamalıdır.
  • AWB kontrolü: Cihaz hem ae_regions hem de awb_regions değerini destekliyorsa UW ve W lens görüntülerinin kırmızı-yeşil ve mavi-yeşil değerleri arasındaki fark, gri renk yaması için% 3'ten, diğer renk yamaları için ise% 10'dan az olmalıdır.
  • AF kontrolü: W lensle çekilen görüntünün keskinliği, UW ile çekilen görüntünün keskinliğinden daha yüksek olmalıdır.

test_multi_camera_switch_gray_uw_y

Şekil 126. Ultra geniş lensle çekilmiş gri yama.

test_multi_camera_switch_gray_w_y

Şekil 127. W lensiyle çekilmiş gri yama.

scene8

scene8, dört eşit bölgeye ayrılmış dikdörtgen bir çerçevedir. Her bölgede farklı pozlamayla çekilmiş veya farklı bir renk tonuyla (mavi ton, artırılmış pozlama, azaltılmış pozlama, sarı ton) kaplanmış bir portre bulunur. Ana dikdörtgen çerçevesinin doğru koordinatlarını elde etmek için dört ArUco işaretleyici, dikdörtgenin dört dış köşesiyle hizalanır.

scene8 örneği

Şekil 128. scene8 örneği.

test_ae_awb_regions

Farklı AE ve AWB bölgelerinde önizleme kaydı yapılırken RGB ve parlaklık değerlerinin farklı olup olmadığını test eder.

Testte 8 saniyelik bir önizleme kaydı alınır. AE ve AWB ölçümü, her çeyrekte 2 saniye boyunca yapılır. Ardından test, her bölgenin önizleme kaydından bir kare çıkarır ve çıkarılan kareleri kullanarak aşağıdaki AE ve AWB kontrollerini gerçekleştirir:

  • AE kontrolü: Azaltılmış pozlamaya sahip bölgeyi ölçen karenin, artırılmış pozlamaya sahip bölgeyi ölçen kareye kıyasla% 1'den fazla artırılmış parlaklık değerine sahip olduğunu doğrular. Bu, karanlık bir bölge ölçülürken görüntülerin aydınlatıldığını doğrular.
  • AWB kontrolü: Mavi ölçüm bölgesini içeren karedeki kırmızı-mavi oranının (görüntünün ortalama RGB değerleri) sarı ölçüm bölgesini içeren kareden %2'den fazla yüksek olduğunu doğrular. Bu, sarı (sıcak) veya mavi (soğuk) bir bölge ölçülürken görüntülerin dengeli bir RGB değerine sahip olduğunu doğrular.

Test edilen API'ler:

Geçti: AE ve AWB kontrolleri başarılı oldu.

test_ae_awb_regions_dark_region

Şekil 129. Pozlama artırılarak karanlık bölge çerçeve ölçümü yapılır.

test_ae_awb_regions_light_region

Şekil 130. Pozlama azaltılarak daha açık bölge çerçevesinde ölçüm yapılır.

Hata mekanizmaları:

  • Bu test için dört ArUco işaretçisinin de doğru şekilde algılanması gerekir. İlk algılama başarısız olursa sistem, görüntünün siyah beyaz versiyonunu kullanarak ikinci bir algılama denemesi yapar. Aşağıdaki gri tonlamalı resimde ikincil işleme adımı gösterilmektedir:

    ArUco işaretçilerinin yanlış hizalanması

    Şekil 131. ArUco işaretçilerinin yanlış hizalanması.

test_color_correction_mode_cct

Farklı renk sıcaklıkları ve tonlarında COLOR_CORRECTION_MODE testleri yaparak RGB oranlarındaki değişiklikleri yakalama sahnesi scene8 ile karşılaştırın.

Test edilen API'ler:

Geçti: RGB oranları, seçilen renk sıcaklıkları ve tonlarına göre beklenen artış veya azalmaları gösteriyor.

Test atlama ölçütleri

Aşağıdaki ölçütlerden herhangi biri karşılanırsa test_color_correction_mode_cct testi atlanır:

scene9

scene9, JPEG sıkıştırma algoritmalarını zorlamak için çok düşük tekrarlanabilirliğe sahip bir sahne oluşturmak üzere rastgele boyutlandırılmış ve renklendirilmiş binlerce daireden oluşur.

scene9 örneği

Şekil 132. scene9 örneği.

test_jpeg_high_entropy

Kamera JPEG sıkıştırmasının, scene9 üzerinde yüksek entropiyle ve JPEG kalite faktörü %100 olarak ayarlanmış şekilde çalıştığını test edin. Tablette gösterilen sahnenin kamera FoV'unu doldurduğunu doğrulamak için yakınlaştırma faktörü artırılır.

Test edilen API'ler:

Geçti: JPEG dosyası düzgün şekilde sıkıştırılmış, yazılmış ve diskten geri okunmuştur.

test_jpeg_quality

Kameranın JPEG sıkıştırma kalitesini test eder. JPEG kalitelerini android.jpeg.quality ile adım adım ilerletir ve nicemleme tablolarının doğru şekilde değiştiğini doğrular.

Test edilen API'ler:

Geçti: Kalite arttıkça nicemleme matrisi azalır. (Matris, bölme faktörünü gösterir.)

Pixel 4 arka kamera parlaklık ve renk DQT matrisi ortalamaları ile JPEG kalitesi karşılaştırması

Şekil 133. Pixel 4 arka kamera parlaklığı ve renk doygunluğu DQT matris ortalamaları ile JPEG kalitesi karşılaştırması.

test_jpeg_quality testi başarısız oldu örneği

Şekil 134. Başarısız test örneği.

scene_video

scene_video, beyaz bir arka plan üzerinde farklı kare hızlarında ileri geri hareket eden dört farklı renkli daireden oluşan bir video sahnesidir.

Şekil 135. scene_video örneği.

test_preview_frame_drop

İstenen önizleme kare hızının dinamik bir sahnede korunup korunmadığını test eder. Bu test, üçüncü taraf uygulamalarına açık olan tüm kameralarda çalışır.

Test edilen API'ler:

Geçti: Önizleme kare hızı, istenen kare hızı aralığının maksimum değerindedir ve ardışık kareler arasındaki ortalama varyasyon, testte ayarlanan göreceli toleranstan daha azdır.

scene_extensions

scene_extensions testleri kamera uzantıları içindir ve test ortamının hassas kontrolünü gerektirdiğinden Camera ITS-in-a-Box kullanılmalıdır. Ayrıca, tüm ışık sızıntısı kontrol edilmelidir. Bu işlem için test düzeneğini, DUT'yi ve tableti bir örtüyle kapatmanızın yanı sıra DUT'nin ön ekranından ışık sızıntısını gidermeniz gerekebilir.

scene_hdr

scene_hdr sahnesinde solda bir portre, sağda ise düşük kontrastlı bir QR kodu yer alıyor.

scene_hdr

Şekil 136. scene_hdr örneği.

test_hdr_extension

HDR uzantısını test eder. Uzantı etkinleştirilmişken ve devre dışıyken çekimler yapar ve uzantının QR kodunu daha kolay algılanabilir hale getirip getirmediğini kontrol eder.

Test edilen API'ler:

Geçme: HDR uzantısı, QR kodunu algılamak için gereken kontrast değişikliklerinin sayısını azaltır veya QR kodundaki gradyanı azaltır.

scene_low_light

scene_low_light sahnesi, siyah arka plan üzerinde farklı gri tonlarında karelerden oluşan bir ızgaradan oluşuyor. Kare ızgarası kırmızı bir ana hatla çevrili. Kareler, Hilbert eğrisi yönünde düzenlenir.

scene_low_light örneği

Şekil 137. scene_low_light örneği.

test_night_extension

Night extension'ı test eder. Uzantı etkin durumdayken yakalama yapar ve aşağıdakileri gerçekleştirir:

  • 20 karenin varlığını algılar
  • Her kareyle sınırlanan parlaklığı hesaplar.
  • Hilbert eğrisi ızgara yönüne göre ilk 6 karenin ortalama parlaklık değerini hesaplar.
  • Ardışık karelerin parlaklık değerindeki farkı (örneğin, kare2 - kare1) 5. ve 6. karelere (kare6 - kare5) kadar hesaplar ve hesaplanan beş farkın ortalamasını bulur.

Android 16 veya daha yeni sürümlerin yüklü olduğu cihazlarda yakalama isteği, kareler ızgarasını sınırlayan dikdörtgene karşılık gelen ölçülü bir bölge içerir. Bu ekleme, eşik geçme ölçütlerini değiştirir.

Test edilen API'ler:

Geçiş:

  • Android 16 veya daha yeni bir sürümü çalıştıran cihazlarda ilk 6 karenin ortalama parlaklık değeri en az 80 olmalı ve 5. ile 6. kareye kadar olan ardışık karelerin ortalama parlaklık değeri farkı en az 18,75 olmalıdır.
  • Android 15 ve önceki sürümlerin yüklü olduğu cihazlarda ilk 6 karenin ortalama parlaklık değeri en az 85 olmalı ve 5. ile 6. kareye kadar olan ardışık karelerin parlaklık değerindeki ortalama fark en az 17 olmalıdır.

Aşağıdaki parlaklık grafiğinde, başarılı bir test sonucunun nasıl göründüğü gösterilmektedir.

Düşük ışıkta gece sahnesi testini geçen örnek

Şekil 138. Düşük ışıkta gece sahnesi testini geçen örnek.

test_low_light_boost_extension

Zayıf ışıkta otomatik pozlama modunu test eder. Camera2, düşük ışık güçlendirmesi AE modunu destekliyorsa bu test Camera2 için yapılır. Gece modu kamera uzantısı destekleniyorsa ve uzantı düşük ışık güçlendirmesi AE modunu destekliyorsa bu test, gece modu kamera uzantısı için de gerçekleştirilir. Bu testte AE modu düşük ışıkta artırma olarak ayarlanır, önizlemeden bir kare alınır ve aşağıdakiler yapılır:

  • 20 kutunun varlığını algılar
  • Her kutuyla sınırlanan parlaklığı hesaplar.
  • Hilbert eğrisi ızgara yönüne göre ilk 6 karenin ortalama parlaklık değerini hesaplar.
  • Ardışık karelerin parlaklık değerindeki farkı (örneğin, kare2 - kare1) 5. ve 6. karelere (kare6 - kare5) kadar hesaplar ve hesaplanan beş farkın ortalamasını bulur.

Android 16 veya daha yeni sürümlerin yüklü olduğu cihazlarda yakalama isteği, kareler ızgarasını sınırlayan dikdörtgene karşılık gelen ölçülü bir bölge içerir. Bu ekleme, eşik geçme ölçütlerini değiştirir.

Test edilen API'ler:

Geçiş:

  • Android 16 veya sonraki sürümlerin yüklü olduğu cihazlarda ilk 6 karenin ortalama parlaklık değeri en az 54 olmalı ve 5. ile 6. kareye kadar olan ardışık karelerin parlaklık değerindeki ortalama fark en az 17 olmalıdır.

  • Android 15 ve önceki sürümlerin yüklü olduğu cihazlarda ilk 6 karenin ortalama parlaklık değeri en az 70 olmalı ve 5. ile 6. kareye kadar olan ardışık karelerin parlaklık değerindeki ortalama fark en az 18 olmalıdır.

scene_tele

scene_tele testleri için önemli bir şart, grafik mesafesinin en azından telefoto lensin minimum odak mesafesi olmasıdır. Bu minimum odak mesafesi cihazlar arasında farklılık gösterebileceğinden kurulumunuzu belirli telefoto kameraya uygun şekilde yapılandırmanız gerekir.

Geniş ve telefoto kameranın odak mesafesine göre scene_tele kurulumu

Şekil 139. Geniş ve telefoto kameranın odak mesafesine göre scene_tele kurulumu.

Test donanımı kurulumu hakkında daha fazla bilgi için Tele uzatma düzeneği kurulumu başlıklı makaleyi inceleyin.

scene6_tele

scene6_tele sahnesi, beyaz arka plan üzerinde bir ArUco işaretçileri ızgarasından oluşur.

scene6_tele çekimlerinde modüler kamera düzeneği ile aşırı pozlanma görünüyorsa modüler kamera düzeneğinin ön plakasını çıkarın.

WFoV test düzeneğinin uzantı bağlantısını kesin ve telefon montajını çıkarın.

WFoV test düzeneğinin bağlantısını uzantıdan kesin ve telefon aparatını çıkarın.

Şekil 140. WFoV test düzeneğinin uzantı bağlantısını kesin ve telefon montajını çıkarın.

remove_front_plate

Şekil 141. Ön plakayı çıkarın.

test_zoom_tele

Geniş lensden telefoto lense geçişte kamera yakınlaştırma davranışını test eder. Test, test_zoom ile aynıdır ancak geniş lensten telefoto lense geçişte kamera yakınlaştırma davranışını test eder.

Test edilen API'ler:

Geçti: Kameranın doğru şekilde yakınlaştırdığını doğrulamak için yakalanan ArUco işaretçisinin göreli boyutu, istenen yakınlaştırma oranıyla karşılaştırıldığında doğru olmalı ve işaretçi ile görüntü merkezi arasındaki mesafe, test_zoom bölümünde listelenen ölçütlere göre değişmelidir.

test_preview_zoom_tele

Geniş lensten telefoto lense geçişte önizleme kareleri için kamera yakınlaştırma davranışını test eder. Test, test_preview_zoom ile aynıdır ancak geniş lensden telefoto lense geçişte önizleme kareleri için kamera yakınlaştırma davranışını test eder.

Test edilen API'ler:

Geçti: Kameranın doğru şekilde yakınlaştırdığını doğrulamak için yakalanan ArUco işaretçisinin göreceli boyutu, istenen yakınlaştırma oranıyla karşılaştırıldığında doğru olmalı ve işaretçi ile görüntü merkezi arasındaki mesafe, test_preview_zoom'da listelenen ölçütlere göre değişmelidir.

scene7_tele

scene7_tele, scene7 ile aynıdır ancak telefoto lens testi için ayarlanmıştır. Dört eşit çeyreğe bölünmüş, her biri farklı bir renkle doldurulmuş dikdörtgen bir çerçevedir. Dikdörtgenin ortasında, keskinlik kontrolleri için eğimli kenarlı bir grafik yer alır. Dört ArUco işaretçisi, dikdörtgenin dört dış köşesiyle hizalanarak farklı yakınlaştırma oranlarında ana dikdörtgen çerçevesinin doğru koordinatlarının elde edilmesine yardımcı olur.

test_multi_camera_switch_tele

Bu test, farklı yakınlaştırma oranlarında önizleme kaydı sırasında geniş (W) ve telefoto (tele) lensler arasında geçiş yapıldığında benzer RGB değerleri elde edildiğini doğrular.

Test, dinamik önizleme kaydı yapmak ve fiziksel kameranın değiştiği noktayı belirlemek için önceden tanımlanmış aralıkta farklı yakınlaştırma oranları kullanır. Bu nokta, geniş açılı lensten telefoto lense geçişi gösterir.

Çapraz geçiş noktasında ve öncesinde çekilen kareler AE, AWB ve AF için analiz edilir.

AE kontrolü, parlaklık değişikliğinin hem geniş hem de telefoto lens görüntülerinde beklenen aralıkta olduğunu doğrular. AWB kontrolü, kırmızı-yeşil ve mavi-yeşil oranlarının hem W hem de telefoto lens görüntüleri için eşik değerleri içinde olduğunu doğrular. AF kontrolü, W ve telefoto lens görüntüleri arasındaki ortalama gradyan büyüklüğüne göre keskinlik tahmini değerini değerlendirir.

Test edilen API'ler:

Geçti: Testin başarılı olması için AE, AWB ve AF kontrollerinin tümü başarılı olmalıdır. Her kontrolün kriterleri aşağıda verilmiştir:

  • AE kontrolü: Geniş ve telefoto lens görüntüleri arasındaki parlaklık değişimi %4'ten az olmalıdır.
  • AWB kontrolü: LAB renk alanında, geniş ve telefoto için kırmızı-yeşil ile mavi-yeşil arasındaki delta C değeri 10'u aşamaz.
  • AF kontrolü: Tele lensin görüntü keskinliği, geniş açılı lensten daha yüksek olmalıdır.

scene_flash

scene_flash testleri için sensör füzyon kutusunda karanlık bir sahne gerekir.

test_auto_flash

Arka ve ön kameralarda otomatik flaşın karanlık bir sahnede tetiklenip tetiklenmediğini test eder. Ön kameralarda otomatik flaş, sahneyi aydınlatmak için fiziksel bir flaş birimi yerine ekranı kullanır. Test, otomatik flaşın etkinleştirilmesiyle karo resminin ortasının daha parlak olduğunu kontrol ederek otomatik flaşın tetiklendiğini doğrular. Otomatik flaşı tetiklemek için test düzeneğindeki ışıkların kapatılması gerekir. Işıklar, Arduino denetleyicisiyle otomatik olarak kapatılabilir. Testin doğru çalışması için sahnenin tamamen karanlık olması gerekir. Testten önce cihaza Jetpack Camera App (JCA) yüklenmelidir. Arka kameralar için otomatik flaşın tetiklenmesi AE durumuna bağlıdır ancak ön kameralar için otomatik flaşın tetiklenmesi AE'ye bağlı değildir ve her zaman tetiklenir.

Test edilen API'ler:

Geçti: Otomatik flaş etkin durumdayken karo resminin merkezi, tüm kameralar için orijinal sahne resminden daha parlaktır.

test_flash_strength

SINGLE modunda flaş gücü kontrolünün doğru şekilde uygulandığını test edin.

Cihazın, kamera kullanımı sırasında SINGLE modunda flaş gücü kontrolünü destekleyip desteklemediğini ve istenen farklı güç seviyelerine göre flaş gücünün değişip değişmediğini doğrular. Flaş gücü kontrolünün farklı AE_MODES ile çalıştığını doğrular. Örneğin, otomatik pozlama modu ON veya OFF ise flaş gücü seviyesi parlaklığı etkiler. Mod ON_AUTO_FLASH ise flaş gücü seviyesinin parlaklık üzerinde etkisi olmaz.

Testi yapmak için test düzeneğindeki ışıklar kapatılmalıdır. Işıklar, Arduino denetleyicisiyle otomatik olarak kapatılabilir. Testin doğru çalışması için sahnenin tamamen karanlık olması gerekir.

Test edilen API'ler:

Geçiş:

Otomatik pozlama modu ON veya OFF olduğunda, flaş gücü seviyesi flaşsızdan FLASH_SINGLE_STRENGTH_MAX_LEVEL'e yükseldikçe görüntü yamalarının parlaklığı artar. Otomatik pozlama modu ON_AUTO_FLASH olduğunda, flaş gücü seviyesi flaşsızdan FLASH_SINGLE_STRENGTH_MAX_LEVEL'ya yükselirken görüntü yamalarının parlaklık farkı tolerans dahilindedir.

test_led_snapshot

LED anlık görüntülerinin resmi doygunlaştırmadığını veya renklendirmediğini test eder.

Bu test, ışıkları kontrol etmek için Sensör Füzyon Kutusu'na bir aydınlatma denetleyicisi ekler. Işıklar OFF olarak ayarlanmışken test, AUTO_FLASH modu ON olarak ayarlanmış şekilde çekim yapar. Bu yakalama sırasında test, aePrecapture tetikleyicisi START olarak ayarlanmış bir ön yakalama dizisi çalıştırır ve yakalamayı flaşla yapmak için yakalama amacını Preview olarak ayarlar.

Çekimde flaş nedeniyle belirgin bir sıcak nokta olduğundan test, çekimin tamamının flaş görüntüsü ortalamasını hesaplar ve değerin (68, 102) aralığında olup olmadığını doğrular. Resmin makul ölçüde beyaz dengeli olup olmadığını kontrol etmek için kırmızı-yeşil ve mavi-yeşil oranları hesaplanır ve bu oranların 0,95 ile 1,05 arasında olup olmadığı doğrulanır.

Test edilen API'ler:

Geçti: Kırmızı-yeşil ve mavi-yeşil oranları 0,95 ile 1,05 arasındadır. Flaş görüntüsünün ortalaması (68, 102) aralığında olmalıdır.

test_night_mode_indicator

Kameranın düşük ışık koşullarında çalışıp çalışmadığını ve gece modu kamera uzantısı ile çekilen fotoğraflardan yararlanıp yararlanmayacağını gösteren bir özellik olan gece modu göstergesinin işlevselliğini test eder. Bu özellik yalnızca Gece Modu Kamera uzantılarını destekleyen cihazlarda kullanılabilir.

Bu test, gece modu göstergesinin kamera önizlemesi sırasında aydınlatma koşullarını doğru şekilde yansıttığını kontrol eder. Testte aşağıdaki adımlar uygulanır:

  1. Başlatma: Test, ItsSession başlatır ve kamera özelliklerini alır. Aydınlatma denetleyicisiyle de bağlantı kurar.
  2. Atlama Koşulları: Cihaz, gerekli API düzeyini veya gece modu göstergesi özelliğini desteklemiyorsa test atlanır.
  3. Camera2 Oturumu:
    • Test, Camera2 oturumunu kullanarak bir önizleme yakalama oturumu başlatır.
    • Işık açılır ve bir önizleme karesi yakalanır.
    • Test, gece modu göstergesinin OFF durumunda olduğunu doğrular.
    • Işık kapatılır ve önizleme karesi yakalanır.
    • Test, gece modu göstergesinin ON durumunda olduğunu doğrular.
  4. Kamera uzantısı oturumu:
    • Test, Camera2 oturumundakiyle aynı prosedürü tekrarlar ancak EXTENSION_NIGHT uzantısıyla CameraExtension oturumu kullanır.
  5. Temizleme: Test ItsSession kapanır ve aydınlatma denetleyicisi serbest bırakılır.

Test edilen API'ler:

Geçiş:

  • Işık açıkken gece modu göstergesi OFF durumunda olmalıdır.
  • Işık kapalıyken gece modu göstergesi ON durumunda olmalıdır.
  • Hem Camera2 hem de CameraExtension oturumları için geçerlidir.

test_preview_min_frame_rate

Önizleme kare hızının karanlık bir sahnede doğru şekilde azaldığını test eder. Bu testin doğru şekilde çalışması için test düzeneğindeki ışıkların kontrol cihazı tarafından veya test operatörü tarafından manuel olarak kapatılması gerekir.

Test edilen API'ler:

Geçti: Önizleme kare hızı, istenen kare hızı aralığının minimum değerindedir ve kareler arasındaki varyasyon, testte belirlenen mutlak toleranstan daha azdır.

test_torch_strength

TORCH modunda flaş gücü kontrolünün doğru şekilde uygulandığını test edin.

Cihazın TORCH modunda kamera kullanılırken flaş gücü kontrolünü destekleyip desteklemediğini doğrular. Destekliyorsa istenen farklı güç seviyelerine göre el feneri gücünün değiştiğini doğrular. Flaş gücü kontrolünün farklı AE_MODES ile çalıştığını doğrular. Örneğin, otomatik pozlama modu ON veya OFF ise flaş gücü seviyesi parlaklığı etkiler. Mod ON_AUTO_FLASH ise flaş gücü seviyesinin parlaklık üzerinde etkisi olmaz. Video çekimini simüle ederek, patlama süresi boyunca el feneri gücünün aynı kaldığını doğrular. Testi yapmak için test düzeneğindeki ışıklar kapatılmalıdır. Işıklar, Arduino denetleyicisiyle otomatik olarak kapatılabilir. Testin doğru çalışması için sahnenin tamamen karanlık olması gerekir.

Test edilen API'ler:

Geçiş:

Otomatik pozlama modu ON veya OFF olduğunda, flaş gücü seviyesi flaşsızdan FLASH_TORCH_STRENGTH_MAX_LEVEL seviyesine yükseldikçe patlama moduyla çekilen fotoğrafların parlaklığı artar. Otomatik pozlama modu ON_AUTO_FLASH olduğunda, flaş gücü seviyesi flaşsızdan FLASH_TORCH_STRENGTH_MAX_LEVEL'ya yükselirken seri çekim görüntülerinin parlaklık farkı tolerans dahilindedir.

sensor_fusion

Sensör füzyonu testleri için telefonun dama deseni ve ArUco işaretlerinin önünde belirli bir şekilde hareket ettirilmesi gerekir. En iyi sonuçları elde etmek için test çizelgesinin düz bir şekilde monte edildiğini doğrulayın. Düz olmayan grafikler, testlerin birçoğunun rotasyon hesaplamalarını etkiler. Grafik, 17x17 inç boyutunda yazdırılarak sensör füzyon kutusunun arkasını doldurmalıdır. (43x43 cm). sensor_fusion testleri, Sensor Fusion Box ile otomatikleştirilebilir.

Sensör birleştirme grafiği

Şekil 142. Sensör birleştirme grafiği.

Rig&#39;deki sensör füzyonu grafiği

Şekil 143. Sensör füzyon kutusunun arka tarafını dolduran sensör füzyon grafiği.

test_lens_intrinsic_calibration

Optik görüntü sabitleme (OIS) nedeniyle mercek hareket ettiğinde merceğin doğal optik merkezinin değişip değişmediğini test eder. Lensin içsel örnekleri destekleniyorsa lensin içsel örneklerinin optik merkezinin, OIS nedeniyle lens hareket ettiğinde değiştiği test edilir.

Test edilen API'ler:

Geçti: Merceğin optik merkezi 1 piksel veya daha fazla değişiyor. Lensin içsel örnekleri destekleniyorsa lensin içsel örneklerinin optik merkezleri 1 piksel veya daha fazla değişir.

Aşağıdaki şekil, her kare için piksel cinsinden ana noktaların değişikliklerini gösteren bir test_lens_intrinsic_calibration grafiği örneğidir:

test_lens_intrinsic_calibration_example.png

Şekil 144. Her bir kare için piksellerdeki temel noktaların değişikliklerini gösteren test_lens_intrinsic_calibration grafiği örneği.

test_multi_camera_frame_sync

Zaman damgasını belirlemek için dama tahtasındaki karelerin açılarını hesaplayarak mantıksal kamera tarafından yakalanan zaman damgalarının 10 ms içinde olduğunu gösteren testler.

Test edilen API'ler:

Geçti: Telefon döndürülürken her kameranın çektiği resimler arasındaki açı önemli ölçüde değişmiyor.

test_preview_distortion

Çeşitli yakınlaştırma düzeylerinde çekilen her önizleme karesinde bozulmanın düzeltildiğini test eder. Test, her önizleme karesi için ideal noktaları kameranın iç ve dış parametrelerine göre hesaplar.

Örnek resimde, ideal noktalar yeşil, gerçek noktalar ise kırmızı renkte gösterilmiştir. Bozulma hatası, gerçek noktalar ile ideal noktalar arasındaki RMS piksel mesafesine göre hesaplanır. Resimdeki yeşil ve kırmızı vurgular, bozulma hatasının bulunduğu alanı görsel olarak tespit etmek için kullanılır.

test_preview_distortion_example.jpg

Şekil 145. İdeal noktaların yeşil, gerçek noktaların kırmızı olduğu dama tahtası resmi.

Test edilen API'ler:

Geçti: Her önizleme karesinin normalleştirilmiş bozulma hatası, testte belirlenen eşikten düşüktür.

test_preview_stabilization

Önizleme videosunu dengeleyen testler, jiroskopla daha az döner.

Test edilen API'ler:

Geçti: Kareler üzerindeki maksimum açı dönüşü, jiroskop dönüşünün% 70'inden az.

Aşağıda, sabitleme özelliği kullanılan ve kullanılmayan örnek videolar yer almaktadır:

Şekil 146. Sabitleme özelliğinin kullanıldığı örnek video.

Şekil 147. Sabitleme uygulanmamış örnek video.

test_sensor_fusion

AR ve VR uygulamaları için kamera ile jiroskop arasındaki zaman damgası farkını test eder. Telefon, dama deseninin önünde 10 kez 90 derece döndürülür. Hareket yaklaşık 2 saniye gidiş dönüş sürüyor. Jiroskop yoksa veya zaman damgası kaynağı REALTIME parametresi etkin değilse bu test atlanır.

test_sensor_fusion testi, bir dizi grafik oluşturur. Hata ayıklama için en önemli iki grafik şunlardır:

  • test_sensor_fusion_gyro_events: Test sırasında telefonun jiroskop etkinliklerini gösterir. X ve Y yönündeki hareket, telefonun montaj plakasına güvenli bir şekilde monte edilmediği anlamına gelir. Bu da testin geçme olasılığını azaltır. Grafikteki döngü sayısı, kareleri kaydetmek için gereken yazma hızına bağlıdır.

    test_sensor_fusion jiroskop etkinlikleri örneği

    Şekil 148. test_sensor_fusion jiroskop etkinlikleri örneği.

  • test_sensor_fusion_plot_rotations: Jiroskop ve kamera etkinliklerinin hizalanmasını gösterir. Bu grafik, kamera ile jiroskop arasında +/- 1 ms'ye kadar eşleşen hareketi göstermelidir.

    test_sensor_fusion plot rotations example

    Şekil 149. test_sensor_fusion grafiği döndürme örneği.

Test edilen API'ler:

Geçti: CDD'deki 7.3.9 Yüksek Doğruluklu Sensörler bölümüne göre kamera ve jiroskop zaman damgalarının farkı 1 ms'den az.

Hata mekanizmaları:

  • Ofset hatası: Kamera-jiroskop ofseti +/-1 ms içinde olacak şekilde doğru şekilde kalibre edilmemiş.
  • Kare düşmeleri: İşlem hattı, 200 kareyi art arda yakalayacak kadar hızlı değil.
  • Soket hataları: adb, testi yürütecek kadar uzun süre güvenilir bir şekilde DUT'a bağlanamıyor.
  • Grafik düz bir şekilde monte edilmemiş. Grafik test_sensor_fusion_plot_rotations düz olmayan grafik bölümlerinde kamera döndükçe jiroskop ve kamera dönüşünün önemli ölçüde değiştiği kareler içeriyor.
  • Kamera düz bir şekilde monte edilmemiş. Grafik, test_sensor_fusion_gyro_events X ve Y düzlemlerindeki hareketi gösterir. Bu arıza, arka kamera genellikle telefon gövdesinin geri kalan kısmına göre yükseltilmiş bir çıkıntıya sahip olduğundan ve telefonun arkasını montaj plakasına takarken eğim oluşturduğundan ön kameralarda daha yaygındır.

test_video_stabilization

Videoyu, jiroskopun döndürdüğünden daha az döndürerek sabitleyen testler.

Test edilen API'ler:

Geçti: Kareler üzerindeki maksimum açı dönüşü, jiroskop dönüşünün% 60'ından az.

Aşağıda, dengeleme özelliği etkin ve devre dışı bırakılmış örnek videolar yer almaktadır.

Şekil 150. Sabitleme özelliğinin kullanıldığı örnek video.

Şekil 151. Sabitleme uygulanmamış örnek video.

test_video_stabilization_jca

JCA kullanılarak çekilen videoları dengeleyen testlerde, jiroskopla çekilen videolara kıyasla daha az döndürme yapılıyor. Testten önce JCA, cihaza yüklenmelidir.

Test edilen API'ler:

Geçti: JCA kullanılarak çekilen videodan çıkarılan karelerdeki maksimum açı dönüşü, jiroskop dönüşünün% 70'inden azdır.

feature_combination

feature_combination testleri, birden fazla kamera özelliği aynı anda etkinleştirildiğinde özelliklerin doğru şekilde çalıştığını doğrular. Bu testlerde, sensör füzyon sahnesinde kullanılan dama tahtası görüntüsü kullanılır.

test_feature_combination

Farklı akış kombinasyonları, video sabitleme modu, hedef FPS aralığı, 10 bit HDR video ve Ultra HDR'nin kamera cihazı tarafından desteklenen tüm kombinasyonlarını test eder.

Android 16 ve sonraki sürümlerde test, desteklenen özelliklerin tüm kombinasyonlarını çalıştırır ve sonuçları bir proto dosyasına kaydeder. Hata onayları yalnızca isSessionConfigurationSupported'nın True döndürdüğü özellik kombinasyonları için çağrılır.

Test edilen API'ler:

Geçti: Desteklenen her özellik kombinasyonu için:

  • Önizleme sabitleme özelliği açıksa önizleme akışı sabitlenir.
  • Önizleme kare hızı, yapılandırılan AE_TARGET_FPS_RANGE içinde olmalıdır.
  • Kaydedilen önizleme akışının renk alanı, ayarlanan renk alanıyla eşleşir.
  • Ultra HDR yakalama işleminde geçerli bir kazanç haritası var.

scene_ip

Android 16 ve sonraki sürümlerde, sahne scene_ip, çekilen görüntüler arasındaki büyük farklılıkları belirlemek için varsayılan kamera uygulaması ile Jetpack kamera uygulaması (JCA) arasında görüntü eşliği kontrolleri yapılmasını sağlar. JCA, sosyal medya uygulaması çekimlerini kopyalar ve sosyal medya uygulamalarının işleyip iyileştirdiği bir temel görüntü sağlar.

Donanım kurulumu koşulları

scene_ip testleri için aşağıdaki donanım kurulumu gereklidir:

  • Testler, Gen2 kamera ITS-in-a-box'ta yürütülür.
  • 2. nesil düzeneğin parçası olan ışıklandırma ve servo denetleyiciler, test ortamını kontrol etmek için kullanılır.
  • 2. nesil rig'in içine bir test özelliği grafiği yerleştirilir.

test_chart_gen2

Şekil 152. Gen2chart_sample örneği.

Test atlama ölçütleri

Aşağıdaki ölçütlerden herhangi biri karşılanırsa scene_ip testleri atlanır:

  • Cihazın ilk API düzeyi (first_api_level) 35 veya daha düşüktür.
  • Cihaz, ön ve arka birincil kamera cihazlarına sahip bir telefon cihazı değildir (ör. tablet veya TV).

test_default_jca_ip

Varsayılan kamera uygulaması ve JCA kullanılarak kontrollü ışık koşullarında test özelliği grafiğinin çekimlerini yapar ve aşağıdaki kontrolleri gerçekleştirir:

  • Görüş alanı: Varsayılan kamera uygulaması ve JCA çekimlerinin aynı görüş alanına sahip olup olmadığını kontrol eder. Bu kontrol, yakalanan grafik görüntüsünden çıkarılan merkezdeki QR kodu özelliğini kullanır.

  • Parlaklık: Varsayılan kamera uygulaması ile JCA arasında ölçülen parlaklık farkının 10'u aşmadığını kontrol eder. Bu kontrol, parlaklık ölçümü için dinamik aralık yamasını kullanır.

  • Beyaz dengesi: Varsayılan kamera uygulaması ile JCA arasındaki beyaz dengesi farkının 4'ü aşmadığını kontrol eder. Bu kontrol, parlaklık ölçümü için dinamik aralık yamasını kullanır.

Temel bölüm geçişi: Test, görüş alanı, parlaklık ve beyaz dengesi kontrollerini geçer. Android 16'da bu test zorunlu değildir (NOT_YET_MANDATED).