Kiểm tra ITS cho máy ảnh

Trang này cung cấp danh sách đầy đủ các bài kiểm tra trong Bộ kiểm tra hình ảnh trên máy ảnh (ITS). Đây là một phần của Trình xác minh Bộ kiểm tra tính tương thích (CTS) với Android. Kiểm thử ITS là kiểm thử chức năng, nghĩa là không đo lường chất lượng hình ảnh, mà tất cả các chức năng của máy ảnh được quảng cáo đều hoạt động như mong đợi. Tài liệu này giúp nhà phát triển và người kiểm thử hiểu được từng kiểm thử thực hiện chức năng gì và cách gỡ lỗi kiểm thử không thành công.

Camera ITS kiểm thử các cổng theo các thuộc tính máy ảnh bắt buộc, cấp độ API và cấp độ hiệu suất nội dung nghe nhìn (MPC). Đối với cấp độ API, ITS sử dụng ro.product.first_api_level để kiểm thử cổng được thêm vào một cấp độ API cụ thể. Cấp độ này kiểm thử trải nghiệm người dùng tiêu cực đối với chức năng ở các cấp độ API thấp hơn. ITS sử dụng ro.vendor.api_level để kiểm thử các tính năng được thêm vào một cấp độ API cụ thể yêu cầu khả năng phần cứng mới. Nếu ro.odm.build.media_performance_class được xác định cho một thiết bị, thì ITS yêu cầu chạy các kiểm thử cụ thể tuỳ thuộc vào cấp MPC.

Các bài kiểm thử được nhóm theo cảnh như sau:

  • scene0: Ghi lại siêu dữ liệu, độ giật, con quay hồi chuyển, độ rung
  • cảnh1: Độ phơi sáng, độ nhạy, bù EV, YUV so với JPEG/RAW
  • scene2: Phát hiện khuôn mặt, các thử nghiệm yêu cầu cảnh màu
  • scene3: Cải thiện cạnh, chuyển động ống kính
  • scene4: Tỷ lệ khung hình, cắt, trường nhìn
  • scene5: Phân vùng bóng đổ của ống kính
  • scene6: Thu phóng
  • scene7: Chuyển đổi nhiều máy ảnh
  • scene8: Đo sáng vùng AE và AWB
  • scene9: Nén JPEG
  • scene_extensions: Tiện ích máy ảnh
  • scene_flash: Tự động bật đèn flash, tốc độ khung hình tối thiểu
  • scene_video: Tần suất bị rớt khung hình
  • sensor_fusion: Độ lệch thời gian của máy ảnh/con quay hồi chuyển
  • feature_results: Các kiểu kết hợp tính năng

Xem từng phần để biết nội dung mô tả của từng cảnh.

cảnh0

Các kiểm thử Scene0 không yêu cầu thông tin cảnh cụ thể. Tuy nhiên, điện thoại phải ở trạng thái tĩnh để kiểm tra con quay hồi chuyển và kiểm tra độ rung.

test_jitter

Đo lường sự biến động trong dấu thời gian của máy ảnh.

API đã được kiểm thử:

Đạt: Có ít nhất 30 ms chênh lệch giữa các khung hình.

test_jitter_plot.png

test_jitter_plot.png (Lưu ý phạm vi trục y nhỏ. Độ trễ thực sự nhỏ trong biểu đồ này.)

test_metadata

Kiểm tra tính hợp lệ của các mục siêu dữ liệu. Xem xét kết quả chụp và đối tượng đặc điểm của máy ảnh. Bài kiểm thử này sử dụng các giá trị độ phơi sáng và độ lợi auto_capture_request vì nội dung hình ảnh không quan trọng.

Các API đã kiểm thử:

Đạt: Có thẻ cấp độ phần cứng, rollingShutterSkew, frameDuration, timestampSource, croppingType, blackLevelPattern, pixel_pitch, FoV, khoảng cách lấy nét siêu tiêu cự và các thẻ này có giá trị hợp lệ.

test_request_capture_match

Kiểm thử để đảm bảo thiết bị ghi chính xác các giá trị phơi sáng và độ lợi bằng cách đọc lại siêu dữ liệu chụp.

Các API đã kiểm thử:

Đạt: Yêu cầu và chụp giá trị siêu dữ liệu trùng khớp trên tất cả ảnh chụp.

test_sensor_events

Kiểm thử các truy vấn thiết bị và in ra các sự kiện cảm biến cho các thiết bị quảng cáo tính năng hỗ trợ hợp nhất cảm biến. Các cảm biến dự kiến là gia tốc kế, con quay hồi chuyển và la bàn. Quy trình kiểm thử này chỉ hoạt động nếu màn hình đang bật, nghĩa là thiết bị không ở chế độ chờ.

Các API đã kiểm thử:

Đạt: Các sự kiện cho mỗi cảm biến sẽ nhận được.

mẫu_kiểm_tra_kết_quả_kết_quả_thử_nghiệm

Kiểm thử để đảm bảo các mẫu kiểm thử màu đồng nhất được tạo đúng cách để tắt tiếng máy ảnh. Nếu hỗ trợ tính năng tắt tiếng máy ảnh, thì phải hỗ trợ các mẫu kiểm thử màu đồng nhất. Nếu tính năng tắt tiếng camera không được hỗ trợ, thì các mẫu kiểm thử màu đồng nhất chỉ được kiểm thử nếu chức năng đó được quảng cáo.

Nếu hình ảnh RAW được hỗ trợ, thì việc chỉ định màu cũng sẽ được kiểm thử. Các màu được kiểm thử là đen, trắng, đỏ, xanh dương và xanh lục. Đối với các máy ảnh không hỗ trợ hình ảnh RAW, chỉ có màu đen là được kiểm tra.

Các API đã kiểm thử:

Đạt: Các mẫu kiểm thử đồng nhất được hỗ trợ có màu chính xác và có độ biến thiên thấp trong hình ảnh.

test_test_pattern

Kiểm thử thông số android.sensor.testPatternMode để chụp khung hình cho từng mẫu kiểm thử hợp lệ và kiểm tra để đảm bảo rằng các khung hình được tạo chính xác cho màu đồng nhất và thanh màu. Quy trình kiểm thử này bao gồm các bước sau:

  1. Chụp ảnh cho tất cả các mẫu kiểm thử được hỗ trợ.
  2. Thực hiện kiểm tra tính chính xác đơn giản cho mẫu kiểm thử màu đồng nhất và thanh màu.

Các API đã kiểm thử:

Đạt: Các mẫu kiểm thử được hỗ trợ được tạo chính xác.

test_test_patterns_2

test_test_patterns_2.jpg

test_tonemap_curve

Thử nghiệm việc chuyển đổi mẫu thử nghiệm từ RAW sang YUV bằng tông màu tuyến tính. Quy trình kiểm thử này yêu cầu android.sensor.testPatternMode = 2 (COLOR_BARS) để tạo một mẫu hình ảnh hoàn hảo cho việc chuyển đổi bản đồ tông màu. Đảm bảo quy trình có đầu ra màu sắc phù hợp với bản đồ tông màu tuyến tính và đầu vào hình ảnh lý tưởng (dựa vào test_test_patterns).

API đã được kiểm thử:

Đạt: YUV và RAW trông giống nhau.

test_tonemap_curve_raw_2

test_tonemap_curve_raw_2.jpg

test_tonemap_curve_yuv_2.jpg

test_tonemap_curve_yuv_2.jpg

test_unified_timestamp

Kiểm tra xem sự kiện cảm biến hình ảnh và chuyển động có nằm trong cùng một miền thời gian hay không.

Các API đã kiểm thử:

Đạt: Dấu thời gian chuyển động nằm giữa hai dấu thời gian hình ảnh.

test_vibration_restriction

Kiểm tra xem tính năng rung của thiết bị có hoạt động như mong đợi hay không.

Các API đã kiểm thử:

Đạt: Thiết bị không rung khi bị API hạn chế âm thanh của máy ảnh tắt tiếng.

scene1

scene1 là một biểu đồ màu xám. Biểu đồ màu xám phải bao phủ 30% trung tâm của trường nhìn của máy ảnh. Biểu đồ màu xám dự kiến sẽ thách thức 3A (tự động phơi sáng, tự động cân bằng trắng, tự động lấy nét) ở mức độ vừa phải vì vùng trung tâm không có đặc điểm nào. Tuy nhiên, yêu cầu chụp chỉ định toàn bộ cảnh, bao gồm các tính năng đủ để 3A hội tụ.

Máy ảnh RFoV có thể được kiểm tra trong WFoV hoặc thiết bị kiểm tra RFoV. Nếu máy ảnh RFoV được kiểm thử trong giàn thử nghiệm WFoV, thì biểu đồ sẽ được điều chỉnh theo tỷ lệ ⅔ để đảm bảo một số ranh giới cho biểu đồ màu xám trong FoV nhằm giúp 3A hội tụ. Để biết thêm thông tin chi tiết về các thiết bị thử nghiệm máy ảnh, hãy xem phần Camera ITS-in-a-box.

scene1

scene1: Biểu đồ ở kích thước đầy đủ (bên trái). Biểu đồ theo tỷ lệ ⅔ (bên phải).

test_ae_precapture_trigger

Kiểm thử máy trạng thái AE khi sử dụng điều kiện kích hoạt thu thập trước. Ghi lại 5 yêu cầu thủ công khi AE bị tắt. Yêu cầu cuối cùng có một trình kích hoạt trước khi chụp AE, bạn nên bỏ qua yêu cầu này vì AE bị tắt.

Các API đã kiểm thử:

Đạt: AE hội tụ.

test_auto_vs_manual

Các thử nghiệm chụp ảnh tự động và ảnh thủ công trông giống nhau.

Các API đã kiểm thử:

Đạt: Độ lợi và phép biến đổi cân bằng trắng thủ công được báo cáo trong mỗi kết quả chụp khớp với cân bằng trắng tự động estimate từ thuật toán 3A của máy ảnh.

test_auto_vs_manual_auto

test_auto_vs_manual_auto.jpg

test_auto_vs_manual_wb

test_auto_vs_manual_wb.jpg

test_auto_vs_manual_manual_wb_tm

test_auto_vs_manual_manual_wb_tm.jpg

test_black_white

Kiểm thử để đảm bảo rằng thiết bị tạo ra ảnh đen trắng đầy đủ. Chụp hai lần, lần đầu có độ lợi cực thấp và thời gian phơi sáng ngắn, dẫn đến ảnh màu đen, lần thứ hai có độ lợi cực cao và thời gian phơi sáng dài, dẫn đến ảnh màu trắng.

Các API đã kiểm thử:

Chuyển: Tạo hình ảnh đen trắng. Kênh bão hoà của hình ảnh màu trắng có giá trị RGB là [255, 255, 255] với biên độ sai số nhỏ hơn 1%.

test_black_white_black test_black_white_black
test_black_white_black.jpg test_black_white_white.jpg

test_black_white_plot_means

test_black_white_plot_means.png

test_burst_capture

Xác minh rằng toàn bộ quy trình chụp có thể bắt kịp tốc độ chụp đầy đủ kích thước và thời gian của CPU.

Các API đã kiểm thử:

Đạt: Chụp một loạt hình ảnh có kích thước đầy đủ, kiểm tra tình trạng giảm khung hình và độ sáng của hình ảnh.

test_burst_sameness_manual

Chụp 5 loạt 50 ảnh bằng chế độ cài đặt chụp thủ công và kiểm tra để đảm bảo rằng tất cả các ảnh đều giống hệt nhau. Bạn có thể dùng quy trình kiểm thử này để xác định xem có khung hình nào được xử lý theo cách khác hay có hiện tượng nhiễu hay không.

Các API đã kiểm thử:

Đạt: Hình ảnh giống hệt nhau về mặt hình ảnh và giá trị RGB.

Không đạt: Cho thấy sự tăng đột biến hoặc giảm của biểu đồ trung bình RGB ở đầu mỗi đợt phát

  • Dung sai là 3% đối với first_API_level < 30
  • Dung sai là 2% đối với first_API_level >= 30

test_burst_sameness_manual_mean

test_burst_sameness_manual_mean.jpg

test_burst_sameness_manual_plot_means

test_burst_sameness_manual_plot_means.png

test_capture_result

Kiểm thử để đảm bảo dữ liệu hợp lệ được trả về trong các đối tượng CaptureResult. Thực hiện tính năng chụp tự động, thủ công và tự động.

Các API đã kiểm thử:

Đạt: Siêu dữ liệu có hiệu lực đối với tất cả các lần ghi và chế độ cài đặt thủ công không rò rỉ vào lần chụp tự động thứ hai. Lập biểu đồ hiệu chỉnh độ bóng của ống kính cho các ảnh chụp.

test_capture_result_plot_lsc_auto_ch0

test_capture_result_plot_lsc_auto_ch0.png

test_crop_region_raw

Kiểm thử để đảm bảo rằng các luồng RAW không thể cắt được.

API đã được kiểm thử:

Đạt: Hình ảnh YUV được cắt theo tâm nhưng không phải hình ảnh RAW.

test_crop_region_raw_comp_raw_crop

test_crop_region_raw_comp_raw_crop.jpg

test_crop_region_raw_comp_raw_full

test_crop_region_raw_comp_raw_full.jpg

test_crop_region_raw_comp_yuv_crop

test_crop_region_raw_comp_yuv_crop.jpg

test_crop_region_raw_yuv_full

test_crop_region_raw_yuv_full.jpg

test_crop_regions

Kiểm thử để đảm bảo các vùng cắt hoạt động. Chụp ảnh đầy đủ và tạo từng mảng của 5 khu vực khác nhau (góc và trung tâm). Chụp ảnh với tập hợp cắt cho 5 vùng. So sánh các giá trị của bản vá và hình ảnh đã cắt.

Các API đã kiểm thử:

Đạt: Hình ảnh của vùng đã cắt khớp với miếng vá tương ứng với hình ảnh đã cắt.

test_dng_noise_model

Xác minh rằng các tham số mô hình thô DNG là chính xác. Biểu đồ mô tả độ biến thiên được đo lường của một mảng trung tâm của thẻ xám trong các ảnh thô được chụp trong một phạm vi độ nhạy, đồng thời so sánh các giá trị này với độ biến thiên dự kiến ở mỗi độ nhạy theo mô hình nhiễu DNG trong HAL máy ảnh (dựa trên các tham số O,S được trả về trong các đối tượng kết quả chụp). Để biết thêm thông tin chi tiết về mô hình nhiễu DNG, hãy tải tài liệu sau đây về Mô hình nhiễu DNG.

Các API đã kiểm thử:

Đạt: Các tham số mô hình thô DNG là chính xác. Giá trị RGB dự kiến khớp với giá trị RGB thực tế được đo lường.

test_dng_noise_model_plog

test_dng_noise_model_plog.png

test_ev_com=b đền bù_nâng_cao

Kiểm thử để đảm bảo rằng giá trị bù phơi sáng (EV) được áp dụng. Quy trình kiểm thử này tăng cường độ sáng trong 8 bước và kiểm tra độ sáng được đo lường so với độ sáng dự kiến. Giá trị dự kiến được tính từ độ sáng của hình ảnh mà không áp dụng hệ số bù EV và giá trị dự kiến sẽ bão hoà nếu giá trị được tính vượt quá phạm vi giá trị hình ảnh thực tế. Kiểm thử không đạt nếu giá trị dự kiến và giá trị đo không khớp hoặc hình ảnh bị phơi sáng quá mức trong vòng 5 bước.

API đã được kiểm thử:

Đạt: Hình ảnh cho thấy độ phơi sáng tăng lên mà không bị phơi sáng quá mức trong vòng 5 bước.

test_ev_compensation_advanced_plot_means

test_ev_compensation_advanced_plot_means.png

test_ev_combenation_basic

Kiểm thử để đảm bảo rằng hệ thống áp dụng tính năng bù EV bằng cách sử dụng một dải được tạo bằng CONTROL_AE_COMPENSATION_STEP. 8 khung hình được chụp ở mỗi giá trị bù sáng.

Các API đã kiểm thử:

Đạt: Ảnh chụp tăng độ sáng khi tăng chế độ cài đặt bù EV và 8 khung hình được chụp cho mỗi chế độ cài đặt bù trừ điện thoại EV có giá trị độ sáng ổn định.

test_ev_combenation_basic

test_ev_com=benthuation_basic.png

test_exposure_x_iso

Kiểm thử để đạt được độ phơi sáng không đổi khi ISO và thời gian phơi sáng thay đổi. Chụp một loạt ảnh có ISO và thời gian phơi sáng được chọn để cân bằng lẫn nhau. Kết quả phải có cùng độ sáng nhưng trong trình tự, hình ảnh sẽ trở nên nhiễu hơn. Xác minh các giá trị trung bình của pixel mẫu gần nhau. Đảm bảo rằng hình ảnh không bị kẹp ở mức 0 hoặc 1 (điều này sẽ khiến hình ảnh trông giống như các đường phẳng). Bạn cũng có thể chạy kiểm thử bằng hình ảnh RAW bằng cách đặt cờ debug trong tệp cấu hình.

Các API đã kiểm thử:

Đạt: Hình ảnh có cùng độ sáng, nhưng bị nhiễu hơn khi ISO cao hơn. Các mặt phẳng RGB sẽ phẳng khi giá trị của ISO*exposure không đổi trong không gian gain đã kiểm thử.

Cơ chế không thành công:

  • Trong test_exposure_plot_means.png, khi giá trị hệ số lợi (trục x) tăng lên, giá trị trung bình của mặt phẳng RGB chuẩn hoá (trục y) bắt đầu sai lệch so với giá trị hệ số lợi thấp.

test_exposure_plot_means

test_exposure_plot_means.png

test_exposure_mult=1.00 test_exposure_mult=64.00
test_exposure_mult=1.00.jpg test_exposure_mult=64.00.jpg

test_jpeg

Các thử nghiệm đã chuyển đổi hình ảnh YUV và hình ảnh JPEG của thiết bị trông giống nhau. Kiểm thử lấy 10% hình ảnh ở giữa và tính toán giá trị RGB, đồng thời xác minh rằng các giá trị này khớp nhau.

Các API đã kiểm thử:

Đạt: Độ chênh lệch RGB trung bình giữa mỗi hình ảnh dưới 3%.

test_jpeg_fmt=jpg.jpg test_jpeg=fmt=yuv.jpg
test_jpeg_fmt=jpg.jpg test_jpeg=fmt=yuv.jpg

test_latching

Các hoạt động kiểm thử mà chế độ cài đặt (độ phơi sáng và độ nhiễu) nằm trên khung hình bên phải cho camera FULLLEVEL_3. Chụp một loạt ảnh bằng các yêu cầu liên tiếp, thay đổi các tham số yêu cầu chụp giữa các ảnh. Kiểm tra để đảm bảo hình ảnh có các thuộc tính dự kiến.

Các API đã kiểm thử:

Đạt: Hình ảnh [2, 3, 6, 8, 10, 12, 13] đã tăng ISO hoặc độ phơi sáng và hiển thị với giá trị trung bình RGB cao hơn trên test_latching_plot_means.png.

test_latching_i=00.jpg test_latching_i=01.jpg test_latching_i=02.jpg
test_latching_i=00.jpg test_latching_i=01.jpg test_latching_i=02.jpg
test_latching_i=03.jpg test_latching_i=04.jpg test_latching_i=05.jpg
test_latching_i=03.jpg test_latching_i=04.jpg test_latching_i=05.jpg
test_latching_i=06.jpg test_latching_i=07.jpg test_latching_i=08.jpg
test_latching_i=06.jpg test_latching_i=07.jpg test_latching_i=08.jpg
test_latching_i=09.jpg test_latching_i=10.jpg test_latching_i=11.jpg
test_latching_i=09.jpg test_latching_i=10.jpg test_latching_i=11.jpg
test_latching_i=12.jpg
test_latching_i=12.jpg

test_latching_plot_means

test_latching_plot_means.png

test_linearity

Các chương trình kiểm thử cho thấy quá trình xử lý thiết bị có thể đảo ngược thành pixel tuyến tính. Chụp một chuỗi ảnh bằng cách thiết bị hướng vào một mục tiêu đồng nhất.

Các API đã kiểm thử:

Đạt: Giá trị R, G, B phải tăng theo tỷ lệ với độ nhạy tăng lên.

test_linearity_plot_means

test_linearity_plot_means.png

test_locked_burst

Kiểm thử khoá 3A và chụp nhanh YUV (sử dụng chế độ cài đặt tự động). Bài kiểm thử này được thiết kế để vượt qua ngay cả trên các thiết bị có giới hạn không có MANUAL_SENSOR hoặc PER_FRAME_CONTROLS. Quy trình kiểm tra này sẽ kiểm tra tính nhất quán của hình ảnh YUV trong khi quy trình kiểm tra tốc độ khung hình diễn ra ở bộ tính năng CTS.

Các API đã kiểm thử:

Đạt: Các ảnh chụp trông nhất quán.

test_locked_burst_frame0

test_locked_burst_frame0.jpg

thử nghiệm_bị_khoá_khung_hình_1

test_lock_burst_frame1.jpg

test_locked_burst_frame2

test_locked_burst_frame2.jpg

test_param_color_correction

Kiểm thử để đảm bảo các tham số android.colorCorrection.* được áp dụng khi được đặt. Chụp ảnh với các giá trị biến đổi và độ lợi khác nhau, đồng thời kiểm tra để đảm bảo rằng các ảnh đó trông khác nhau tương ứng. Biến đổi và độ lợi được chọn để làm cho đầu ra ngày càng có màu đỏ hoặc xanh dương. Sử dụng sơ đồ tông màu tuyến tính. Ánh xạ tông màu là một kỹ thuật được dùng trong quá trình xử lý hình ảnh để liên kết một nhóm màu với một nhóm màu khác nhằm ước chừng giao diện của hình ảnh có dải động cao trong một phương tiện có dải động bị hạn chế hơn.

Các API đã kiểm thử:

Đạt: Giá trị R và B tăng theo phép biến đổi.

test_param_color_correction_plot_means

test_param_color_correction_plot_means.png

*Trục x là các yêu cầu chụp: 0 = thống nhất, 1=tăng cường màu đỏ, 2= tăng cường màu xanh dương

test_param_color_correction_req=0

test_param_color_correction_req=0.jpg

test_param_color_correctness_req=1

test_param_color_correctness_req=1.jpg (Tăng cường R)

test_param_color_correction_req=2

test_param_color_correct_req=2.jpg (tăng B)

chế_độ_thông_số_thử_nghiệm

Các chương trình kiểm thử áp dụng tham số android.flash.mode. Đặt thủ công độ phơi sáng ở phía tối để biết rõ liệu đèn flash có được kích hoạt hay không và sử dụng bản đồ tông màu tuyến tính. Kiểm tra phần giữa bằng hình ảnh xếp kề để xem có hiệu ứng chuyển màu lớn được tạo hay không nhằm xác minh xem đèn flash có được kích hoạt hay không.

Các API đã kiểm thử:

Đạt: Trung tâm của hình ảnh thẻ thông tin có độ dốc lớn, nghĩa là đèn flash đã được kích hoạt.

test_param_flash_mode_1

test_param_flash_mode_1.jpg

test_param_flash_mode_1_tile

test_param_flash_mode_1_tile.jpg

thông_số_flash_chế_độ_2

test_param_flash_mode_2.jpg

test_param_flash_mode_2_tile

test_param_flash_mode_2_tile.jpg

thử nghiệm_thông_số_noise_reduction

Các lần kiểm thử rằng tham số android.noiseReduction.mode được áp dụng chính xác khi được đặt. Chụp ảnh khi máy ảnh có ánh sáng yếu. Sử dụng mức tăng analog cao để đảm bảo hình ảnh chụp bị nhiễu. Chụp 3 hình ảnh để tắt NR, "nhanh" và "chất lượng cao". Ngoài ra, hãy chụp một hình ảnh có độ lợi thấp và tắt tính năng NR, đồng thời sử dụng độ biến thiên của hình ảnh này làm đường cơ sở. SNR (Tỷ lệ tín hiệu trên nhiễu) càng cao thì chất lượng ảnh càng tốt.

Các API đã kiểm thử:

Đạt: Tỷ lệ tín hiệu trên tạp âm thay đổi theo các chế độ giảm tạp âm và hoạt động tương tự như biểu đồ bên dưới.

test_param_noise_reduction_plot_SNRs

test_param_noise_reduction_plot_SNRs.png

0: TẮT, 1: NHANH, 2: HQ, 3: MIN , 4: ZSL

test_param_noise_reduction_high_gain_nr=0

test_param_noise_reduction_high_gain_nr=0.jpg

test_param_noise_reduction_high_gain_nr=1

test_param_noise_reduction_high_gain_nr=1.jpg

test_param_noise_reduction_high_gain_nr=2

test_param_noise_reduction_high_gain_nr=2.jpg

test_param_noise_reduction_high_gain_nr=3

test_param_noise_reduction_high_gain_nr=3.jpg

test_param_noise_reduction_low_gain

test_param_noise_reduction_low_gain.jpg

test_param_shading_mode

Các chương trình kiểm thử áp dụng tham số android.shading.mode.

Các API đã kiểm thử:

Đạt: Chế độ tô bóng sẽ được chuyển và bản đồ đổ bóng ống kính được sửa đổi như mong đợi.

test_param_shading_mode_ls_maps_mode_0_loop_0

test_param_shading_mode_ls_maps_mode_0_loop_0.png

thử nghiệm_thông_số_đổ_chế_độ_chế_độ_sử_dụng_chế_độ_tính_năng_1_vòng_0

test_param_shading_mode_ls_maps_mode_1_loop_0.png

test_param_shading_mode_ls_maps_mode_2_loop_0

test_param_shading_mode_ls_maps_mode_2_loop_0.png

test_param_tonemap_mode

Các chương trình kiểm thử áp dụng tham số android.tonemap.mode. Áp dụng các đường cong phối màu khác nhau cho từng kênh R, G, B và kiểm tra xem hình ảnh đầu ra có được sửa đổi như mong đợi không. Chương trình kiểm thử này bao gồm 2 chương trình kiểm thử là test1 và test2.

Các API đã kiểm thử:

Mật khẩu:

  • test1: Cả hai hình ảnh đều có bản đồ tông màu tuyến tính, nhưng n=1 có độ dốc lớn hơn. Kênh G (xanh lục) sáng hơn cho hình ảnh n=1.
  • test2: Cùng một bản đồ tông màu, nhưng thời lượng khác nhau. Hình ảnh giống nhau.
test_param_tonemap_mode_n=0.jpg test_param_tonemap_mode_n=1.jpg
test_param_tonemap_mode_n=0.jpg test_param_tonemap_mode_n=1.jpg

test_post_raw_sensitivity_boost

Kiểm tra việc tăng độ nhạy sau khi RAW. Chụp một tập hợp các hình ảnh RAW và YUV có độ nhạy khác nhau, đăng tổ hợp tăng độ nhạy RAW và kiểm tra xem giá trị pixel đầu ra có khớp với các chế độ cài đặt yêu cầu hay không.

Các API đã kiểm thử:

Đạt: Hình ảnh RAW sẽ tối hơn khi mức tăng, trong khi hình ảnh YUV vẫn duy trì độ sáng

test_post_raw_sensitivity_boost_raw_s=3583_boost=0100

test_post_raw_sensitivity_boost_raw_s=3583_boost=0100.jpg

test_post_raw_sensitivity_boost_raw_s=1792_boost=0200

test_post_raw_sensitivity_boost_raw_s=1792_boost=0200.jpg

test_post_raw_sensitivity_boost_raw_s=0896_boost=0400

test_post_raw_sensitivity_boost_raw_s=0896_boost=0400.jpg

test_post_raw_sensitivity_boost_raw_s=0448_boost=0800

test_post_raw_sensitivity_boost_raw_s=0448_boost=0800.jpg

test_post_raw_sensitivity_boost_raw_s=0224_boost=1600

test_post_raw_sensitivity_boost_raw_s=0224_boost=1600.jpg

test_post_raw_sensitivity_boost_raw_s=0112_boost=3199

test_post_raw_sensitivity_boost_raw_s=0112_boost=3199.jpg

test_post_raw_sensitivity_boost_raw_plot_means

test_post_raw_sensitivity_boost_raw_plot_means.png

test_post_raw_sensitivity_boost_yuv_s=0112_boost=3199

test_post_raw_sensitivity_boost_yuv_s=0112_boost=3199.jpg

test_post_raw_sensitivity_boost_yuv_s=0448_boost=0800

test_post_raw_sensitivity_boost_yuv_s=0448_boost=0800.jpg

test_post_raw_sensitivity_boost_yuv_s=0896_boost=0400

test_post_raw_sensitivity_boost_yuv_s=0896_boost=0400.jpg

test_post_raw_sensitivity_boost_yuv_s=1792_boost=0200

test_post_raw_sensitivity_boost_yuv_s=1792_boost=0200.jpg

test_post_raw_sensitivity_boost_yuv_s=3585_boost=0100

test_post_raw_sensitivity_boost_yuv_s=3585_boost=0100.jpg

test_post_raw_sensitivity_boost_yuv_plot_means

test_post_raw_sensitivity_boost_yuv_plot_means.png

test_raw_burst_sensitivity

Chụp một nhóm hình ảnh thô với độ lợi tăng dần và đo độ nhiễu. Chỉ chụp ảnh thô, theo chế độ chụp liên tiếp.

API đã được kiểm thử:

Đạt: Mỗi cảnh quay có nhiều tạp âm hơn cảnh quay trước đó, vì độ lợi đang tăng lên.

Sử dụng phương sai của ô lưới thống kê trung tâm.

test_raw_burst_sensitivity_variance

test_raw_burst_sensitivity_variance.png

test_raw_exposure

Chụp một tập hợp hình ảnh thô với thời gian phơi sáng tăng dần và đo lường giá trị pixel.

Các API đã kiểm thử:

Đạt: Việc tăng ISO (tăng) giúp các pixel nhạy cảm hơn với ánh sáng, vì vậy, biểu đồ sẽ di chuyển về phía bên trái.

test_raw_exposure_s=55

test_raw_exposure_s=55.png

(100 là 1 mili giây, 101 là 10 mili giây, 10−1 là 0,1 mili giây)

test_raw_exposure_s=132

test_raw_exposur_s=132.png

test_raw_exposure_s=209

test_raw_exposur_s=209.png

test_raw_exposur_s=286

test_raw_exposure_s=286.png

test_raw_exposur_s=363

test_raw_exposure_s=363.png

test_raw_exposure_s=440

test_raw_exposure_s=440.png

độ nhạy_kiểm_tra

Chụp một tập hợp hình ảnh thô có độ nhạy tăng dần và đo độ nhiễu (chênh lệch) ở giữa là 10% hình ảnh. Kiểm thử để đảm bảo mỗi lần chụp đều có nhiều tạp âm hơn lần chụp trước.

Các API đã kiểm thử:

Đạt: Phương sai tăng lên theo từng lần chụp.

test_raw_sensitivity_variance

test_raw_sensitivity_variance.png

test_reprocess_noise_reduction

Các hoạt động kiểm thử mà android.noiseReduction.mode được áp dụng cho các yêu cầu xử lý lại. Chụp hình ảnh được xử lý lại với máy ảnh thiếu sáng. Sử dụng độ lợi tương tự cao để đảm bảo hình ảnh chụp bị nhiễu. Chụp 3 hình ảnh được xử lý lại, cho chế độ NR tắt, "nhanh" và "chất lượng cao". Chụp một hình ảnh được xử lý lại với độ lợi thấp và tắt tính năng Giảm nhiễu (NR), đồng thời sử dụng độ biến thiên của hình ảnh này làm đường cơ sở.

Các API đã kiểm thử:

Pass: FAST >= OFF, HQ >= FAST, HQ >> TẮT

Biểu đồ SNR điển hình so với NR_MODE

Biểu đồ SNR điển hình so với NR_MODE

test_tonemap_sequence

Thử nghiệm một chuỗi cảnh quay có nhiều đường cong tông màu. Chụp 3 ảnh thủ công bằng bản đồ tông màu tuyến tính. Chụp 3 ảnh thủ công bằng bản đồ tông màu mặc định. Tính toán delta giữa mỗi cặp khung liên tiếp.

Các API đã kiểm thử:

Đạt: Có 3 khung hình giống hệt nhau, theo sau là một nhóm 3 khung hình giống hệt nhau khác.

test_tonemap_sequence_i=0

test_tonemap_sequence_i=0.jpg

test_tonemap_sequence_i=1

test_tonemap_sequence_i=1.jpg

test_tonemap_sequence_i=2

test_tonemap_sequence_i=2.jpg

test_tonemap_sequence_i=3

test_tonemap_sequence_i=3.jpg

test_tonemap_sequence_i=4

test_tonemap_sequence_i=4.jpg

test_tonemap_sequence_i=5

test_tonemap_sequence_i=5.jpg

test_yuv_jpeg_all

Kiểm thử để đảm bảo tất cả kích thước và định dạng được báo cáo cho tính năng chụp ảnh đều hoạt động. Sử dụng yêu cầu thủ công với bản đồ tông màu tuyến tính để YUV và JPEG trông giống nhau khi được mô-đun image_processing_utils chuyển đổi. Theo mặc định, hình ảnh không được lưu, nhưng bạn có thể lưu bằng cách bật debug_mode.

Các API đã kiểm thử:

Đạt: Tất cả các tâm hình ảnh đều có độ chênh lệch RMS (giá trị trung bình bình phương gốc của tín hiệu) tối đa trong hình ảnh được chuyển đổi RGB với 3% hình ảnh YUV có độ phân giải cao nhất.

test_yuv_jpeg_all

test_yuv_jpeg_all.png

test_yuv_plus_dng

Kiểm thử để đảm bảo kích thước và định dạng được báo cáo cho tính năng chụp ảnh hoạt động.

Các API đã kiểm thử:

Đạt: Kiểm thử hoàn tất và trả về các hình ảnh được yêu cầu.

test_yuv_plus_dng

test_yuv_plus_dng.jpg

test_yuv_plus_jpeg

Các bài kiểm thử chụp một khung hình duy nhất ở dạng đầu ra cả YUV và JPEG. Sử dụng yêu cầu thủ công với bản đồ tông màu tuyến tính để YUV và JPEG trông giống nhau khi được mô-đun image_processing_utils chuyển đổi.

API đã được kiểm thử:

Đạt: Hình ảnh YUV và JPEG tương tự nhau và có chênh lệch RMS (giá trị trung bình bình phương gốc của tín hiệu) dưới 1%.

test_yuv_plus_jpg_jpg.jpg test_yuv_plus_jpeg_yuv.jpg
test_yuv_plus_jpg_jpg.jpg test_yuv_plus_jpeg_yuv.jpg

test_yuv_plus_raw

Kiểm thử việc chụp một khung hình dưới dạng cả đầu ra RAW/RAW10/RAW12 và YUV nếu được hỗ trợ. Sử dụng yêu cầu thủ công với bản đồ tông màu tuyến tính để dự kiến là dữ liệu thô và YUV sẽ giống nhau. So sánh các giá trị RGB 10% ở giữa của hình ảnh đã chuyển đổi RGB. Nhật kýandroid.shading.mode.

Các API đã kiểm thử:

Đạt: Hình ảnh YUV và hình ảnh thô tương tự nhau và có sự chênh lệch nhỏ hơn 3,5% RMS (giá trị trung bình bình phương gốc của tín hiệu).

test_yuv_plus_raw_shading=1_raw.jpg test_yuv_plus_raw_shading=1_yuv.jpg
test_yuv_plus_raw_shading=1_raw.jpg test_yuv_plus_raw_shading=1_yuv.jpg

cảnh 2_a

scene2_a có ba khuôn mặt với nền xám và trang phục trung tính. Những khuôn mặt này được chọn để có nhiều tông màu da. Biểu đồ phải có hướng đúng để tính năng phát hiện khuôn mặt hoạt động tối ưu.

cảnh 2_a

scene2_a

test_autoframing

Kiểm thử hoạt động tự động lấy khung hình của thiết bị camera. Thực hiện thu phóng lớn để không có khuôn mặt nào trong cảnh hiển thị, bật chế độ tự động lấy khung hình bằng cách đặt AUTOFRAMING trong CaptureRequest thành True và xác minh xem có thể phát hiện tất cả khuôn mặt trong cảnh ban đầu hay không khi trạng thái hội tụ (tức là khi AUTOFRAMING_STATE trong CaptureResult được đặt thành AUTOFRAMING_STATE_CONVERGED).

Các API đã kiểm thử:

Đạt: Cả 3 khuôn mặt đều được phát hiện.

test_display_p3

Kiểm thử tính năng chụp Display P3 ở định dạng JPEG bằng API ColorSpaceProfiles. Kiểm thử để đảm bảo rằng JPEG đã chụp có hồ sơ ICC thích hợp trong tiêu đề và hình ảnh chứa các màu nằm ngoài gam màu sRGB.

Các API đã kiểm thử:

Đạt: Tệp JPEG chứa cấu hình ICC Display P3 và các màu nằm ngoài gam màu sRGB.

test_effects

Chụp khung hình cho các hiệu ứng máy ảnh được hỗ trợ và kiểm tra xem các hiệu ứng đó có được tạo đúng cách hay không. Quy trình kiểm thử chỉ kiểm tra các hiệu ứng OFFMONO, nhưng lưu hình ảnh cho tất cả các hiệu ứng được hỗ trợ.

API đã được kiểm thử:

Chuyển: Chụp ảnh cảnh có hiệu ứng OFF và ảnh đơn sắc với hiệu ứng được đặt thành MONO.

test_effects_MONO

test_effects_MONO.jpg

các_định_dạng_thử_nghiệm

Kiểm thử nhiều kiểu kết hợp định dạng đầu ra.

Các API đã kiểm thử:

Đạt: Tất cả các tổ hợp đều được ghi lại thành công.

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt.

Các API đã kiểm thử:

Đạt: Tìm thấy 3 khuôn mặt.

test_num_faces_fd_mode_1

test_num_faces_fd_mode_1.jpg

test_reprocess_uv_swap

Kiểm thử việc tái xử lý YUV không hoán đổi mặt phẳng U và V. Điều này được phát hiện bằng cách tính tổng chênh lệch tuyệt đối (SAD) giữa hình ảnh được xử lý lại và ảnh chụp không được xử lý lại. Nếu việc hoán đổi các mặt phẳng U và V đầu ra của ảnh chụp được xử lý lại làm tăng SAD, thì đầu ra được giả định là có các mặt phẳng U và V chính xác.

API đã được kiểm thử:

Đạt: Các mặt phẳng U và V không bị hoán đổi.

test_reprocess_uv_swap

test_reprocess_uv_swap.png

cảnh 2_b

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt với nhiều màu da hơn trong các cảnh có khuôn mặt.

API đã được kiểm thử:

Đạt: Tìm thấy 3 khuôn mặt.

test_num_faces_fd_mode_1

test_num_faces_fd_mode_1.jpg

test_yuv_jpeg_capture_sameness

Chụp 2 hình ảnh bằng các định dạng YUV và JPEG phổ biến nhất với cùng tỷ lệ khung hình với định dạng JPEG lớn nhất không vượt quá độ phân giải 1920x1440. Đặt jpeg.quality thành 100 và ghi lại yêu cầu về nền tảng kép. Chuyển đổi cả hai hình ảnh thành mảng RGB và tính toán chênh lệch trung bình bình phương căn bậc hai (RMS) 3D giữa hai hình ảnh.

Ngoài ra, quy trình kiểm thử này xác minh rằng đầu ra YUV cho tất cả các trường hợp sử dụng phát trực tuyến được hỗ trợ tương tự một cách hợp lý với YUV với trường hợp sử dụng STILL_CAPTURE.

Các API đã kiểm thử:

Đạt: Hình ảnh YUV và JPEG cho trường hợp sử dụng STILL_CAPTURE có chênh lệch RMS (giá trị trung bình bình phương gốc của tín hiệu) dưới 3%; hình ảnh YUV cho tất cả trường hợp sử dụng được hỗ trợ có chênh lệch RMS dưới 10% so với hình ảnh YUV với trường hợp sử dụng STILL_CAPTURE.

scene2_c

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt với nhiều màu da hơn trong các cảnh có khuôn mặt.

API đã được kiểm thử:

Đạt: Tìm thấy 3 khuôn mặt.

test_num_faces_fd_mode_1

test_num_faces_fd_mode_1.jpg

test_jpeg_capture_perf_class

Kiểm thử độ trễ chụp ảnh JPEG cho lớp hiệu suất S như quy định trong phần 2.2.7.2 Camera trong CDD.

Đạt: PHẢI có độ trễ chụp ảnh JPEG camera2 < 1000 mili giây đối với độ phân giải 1080p được đo bằng PerformanceTest của máy ảnh CTS trong điều kiện chiếu sáng ITS (3000K) cho cả hai máy ảnh chính.

test_camera_launch_perf_class

Kiểm thử độ trễ khởi chạy máy ảnh cho lớp hiệu suất S như được chỉ định trong mục 2.2.7.2 Máy ảnh trong CDD.

Đạt: PHẢI có độ trễ khởi động camera2 (mở camera đến khung hình xem trước đầu tiên) < 600 mili giây theo đo lường của PerformanceTest camera CTS trong điều kiện chiếu sáng ITS (3000K) cho cả hai camera chính.

test_default_camera_hdr

Các quy trình kiểm thử mà máy ảnh mặc định chụp là Ultra HDR cho hiệu suất cấp 15 như nêu trong mục 2.2.7.2 Camera của CDD.

Đạt: Tính năng chụp gói máy ảnh mặc định PHẢI là Ultra HDR đối với thiết bị thuộc lớp hiệu suất 15.

scene2_d

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt với nhiều màu da hơn trong các cảnh có khuôn mặt.

API đã được kiểm thử:

Đạt: Tìm thấy 3 khuôn mặt.

scene2_e

test_continuous_picture

50 khung hình có độ phân giải VGA được chụp bằng chế độ cài đặt yêu cầu chụp đầu tiên android.control.afMode = 4 (CONTINUOUS_PICTURE).

Các API đã kiểm thử:

Đạt: Hệ thống 3A ổn định khi kết thúc quá trình chụp 50 khung hình.

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt với nhiều màu da hơn trong các cảnh có khuôn mặt.

API đã được kiểm thử:

Đạt: Tìm 3 khuôn mặt.

cảnh_f

scene2_f có ba khuôn mặt với nền màu trắng và quần áo màu trắng. Khuôn mặt có nhiều tông màu da và độ tương phản cao với nền.

cảnh2_f.png

scene2_f

test_num_faces

Kiểm thử tính năng phát hiện khuôn mặt với nhiều màu da hơn trong các cảnh có khuôn mặt.

API đã được kiểm thử:

Đạt: Tìm thấy 3 khuôn mặt.

test_num_faces_fd_mode_1

test_num_faces_fd_mode_1.jpg

scene3

Scene3 sử dụng biểu đồ ISO12233 và hầu hết các bài kiểm thử đều sử dụng phương thức trích xuất biểu đồ để tìm biểu đồ trong cảnh. Vì lý do này, hầu hết hình ảnh đã lưu không có đường viền như hình ảnh cho cảnh 1, 2 hoặc 4, mà chỉ có biểu đồ. Biểu đồ phải ở đúng hướng để trình tìm biểu đồ hoạt động một cách tối ưu.

nâng_cao_thử_nghiệm

Kiểm thử để đảm bảo thông số android.edge.mode được áp dụng đúng cách. Ghi lại hình ảnh không qua xử lý lại cho mỗi chế độ cạnh và trả về độ sắc nét của hình ảnh đầu ra cũng như siêu dữ liệu kết quả chụp. Xử lý yêu cầu chụp bằng một chế độ cạnh, độ nhạy, thời gian phơi sáng, khoảng cách lấy nét và tham số bề mặt đầu ra nhất định.

Đạt: Chế độ HQ (2) sắc nét hơn chế độ OFF (0). Chế độ FAST (1) sắc nét hơn so với chế độ OFF. Chế độ HQ sắc nét hơn hoặc bằng chế độ FAST.

Các API đã kiểm thử:

Các tham số máy ảnh bị ảnh hưởng:

  • EDGE_MODE

test_edge_enhancement_edge=0

test_edge_enhancement_edge=0.jpg

test_edge_enhancement_edge=1

test_edge_enhancement_edge=1.jpg (chế độ nhanh)

test_edge_enhancement_edge=2

test_edge_enhancement_edge=2.jpg (chế độ chất lượng cao)

test_flip_mirror

Kiểm tra xem hình ảnh có được định hướng đúng cách theo mục 7.5.2 của CDD về Máy ảnh mặt trước [C-1-5] hay không.

Bạn có thể xác định hình ảnh được phản chiếu, lật hoặc xoay bằng tính năng hình kim cương gần trung tâm.

Đạt: Hình ảnh không bị lật, phản chiếu hoặc xoay.

test_flip_mirror_scene_patch

test_flip_mirror_scene_patch.jpg

test_imu_drift

Kiểm thử xem đơn vị đo lường quán tính (IMU) có đầu ra ổn định trong 30 giây khi thiết bị đứng yên và chụp bản xem trước có độ phân giải cao hay không.

Các API đã kiểm thử:

Mật khẩu:

  • Độ lệch của con quay hồi chuyển ít hơn 0,01 rad trong thời gian thử nghiệm.
  • Độ lệch của kết quả đọc con quay hồi chuyển nhỏ hơn 1E-7 rad2/s2/Hz trong thời gian kiểm thử.
  • Độ lệch của vectơ xoay nhỏ hơn 0,01 rad trong thời gian kiểm thử.
  • (Chưa bắt buộc) độ trôi của con quay hồi chuyển dưới 1 độ mỗi giây.

test_imu_drift_gyro_drift.png

test_imu_drift_gyro_drift.pngS

test_imu_drift_rotation_vector_drift.png

test_imu_drift_rotation_vector_drift.png

test_landscape_to_portrait

Kiểm thử xem chế độ ghi đè từ ngang sang dọc có hoạt động đúng cách đối với các cảm biến hướng ngang hay không.

Các API đã kiểm thử:

Đạt: Quy trình kiểm thử có thể tìm thấy biểu đồ có chế độ xoay dự kiến (0 độ khi chế độ ghi đè từ chế độ ngang sang dọc bị tắt, 90 độ khi được bật).

test_ngang_to_dọc

test_landscape_to_portrait.png

test_lens_movement_reporting

Kiểm tra xem cờ chuyển động của ống kính có được báo cáo đúng cách hay không. Chụp một loạt 24 hình ảnh với 12 khung hình đầu tiên ở khoảng cách lấy nét tối ưu (do 3A tìm thấy) và 12 khung hình cuối cùng ở khoảng cách lấy nét tối thiểu. Khoảng khung hình 12, ống kính di chuyển khiến độ sắc nét giảm. Cuối cùng, độ sắc nét sẽ ổn định khi kính di chuyển đến vị trí cuối cùng. Cờ chuyển động của ống kính phải được xác nhận trong tất cả các khung hình có độ sắc nét trung bình đến độ sắc nét trong vài khung hình đầu tiên với ống kính đứng yên ở khoảng cách tiêu cự tối ưu và vài khung hình cuối cùng mà ống kính đứng yên trong khoảng tiêu cự tối thiểu. Khung chính xác mà ống kính di chuyển không quan trọng: điều được kiểm tra là cờ chuyển động được xác nhận khi ống kính đang di chuyển.

Các API đã kiểm thử:

Đạt: Cờ chuyển động của ống kính là True trong khung có sự thay đổi về độ sắc nét.

Cơ chế không thành công:

  • lens_moving: True (android.hardware.camera2.CaptureResult#LENS_STATE = 1) trong test_log.DEBUG chỉ được xác nhận trong các khung hình mà độ sắc nét không thay đổi.
  • Các khung hình có lens_moving: False (android.hardware.camera2.CaptureResult#LENS_STATE = 0) trong test_log.DEBUG có độ sắc nét khác so với vài khung hình đầu tiên ở khoảng cách tiêu cự tối ưu hoặc vài khung hình cuối cùng ở khoảng cách tiêu cự tối thiểu.

test_reprocess_edge_enhancement

Kiểm tra xem các phương thức tái xử lý được hỗ trợ để cải tiến cạnh có hoạt động đúng cách hay không. Xử lý yêu cầu chụp bằng một chế độ cạnh xử lý lại nhất định và so sánh các chế độ chụp khác với chế độ cạnh xử lý lại bị tắt.

API đã được kiểm thử:

Đạt: Độ sắc nét cho các chế độ viền khác nhau là chính xác. HQ (chế độ 2) sắc nét hơn OFF (chế độ 0) và mức độ cải thiện giữa các chế độ cũng tương tự nhau.

test_reprocess_edge_enhancement_plot

test_reprocess_edge_enhancement_plot.png

scene4

Scene4 bao gồm một vòng tròn màu đen trên nền trắng bên trong một hình vuông. Các kiểm thử trong scene4 có thể nhạy cảm với việc căn chỉnh, vì vậy, bắt đầu từ phiên bản 15, bạn có thể sử dụng check_alignment.py trong thư mục công cụ để bật tính năng kiểm tra DUT và căn chỉnh biểu đồ.

scene4

scene4

test_30_60fps_preview_fov_match

Kiểm thử để đảm bảo video xem trước ở tốc độ 30 FPS và 60 FPS có cùng FoV. Quy trình kiểm thử sẽ quay hai video, một video có tốc độ 30 khung hình/giây và một video có tốc độ 60 khung hình/giây. Một khung hình đại diện được chọn từ mỗi video và được phân tích để đảm bảo rằng các thay đổi về FoV trong hai video nằm trong thông số kỹ thuật. Kiểm thử để đảm bảo rằng tỷ lệ khung hình của vòng tròn không đổi, tâm của vòng tròn giữ ổn định và bán kính của vòng tròn không đổi.

Các API đã kiểm thử:

Đạt: Hình ảnh không bị kéo giãn, tâm của hình ảnh không khác nhau quá 3% và tỷ lệ khung hình thay đổi tối đa giữa video 30 FPS và 60 FPS không quá 7,5%

Cơ chế không thành công:

  • Vòng tròn từ video 30 khung hình/giây có sự khác biệt đáng kể về kích thước so với video 60 khung hình/giây.
  • Vòng tròn trong hình ảnh đã chụp bị làm méo bởi quy trình xử lý.
  • Vòng tròn trong hình ảnh đã chụp bị cắt do yêu cầu chụp tỷ lệ khung hình quá mức làm giảm chiều cao hoặc chiều rộng của hình ảnh.
  • Vòng tròn trong ảnh đã chụp có hình phản chiếu ở chính giữa và không xuất hiện đầy đủ.

test_aspect_ratio_and_crop

Kiểm tra xem hình ảnh có bị méo hình hoặc bị cắt đột ngột trong quy trình hình ảnh hay không. Chụp ảnh một vòng tròn ở tất cả các định dạng. Xác minh vòng tròn không bị méo, vòng tròn không di chuyển khỏi tâm hình ảnh và vòng tròn không thay đổi kích thước một cách không chính xác theo nhiều tỷ lệ khung hình hoặc độ phân giải.

Các API đã kiểm thử:

Đạt: Hình ảnh không bị kéo giãn, trung tâm của hình ảnh không khác nhau quá 3% và FoV (góc nhìn) tối đa có thể được giữ nguyên.

Cơ chế không thành công:

  • Máy ảnh không được căn chỉnh với vòng tròn hiển thị trên máy tính bảng ở giữa cảnh đã chụp.
  • Vòng tròn trong hình ảnh được chụp bị méo do quy trình xử lý.
  • Hình ảnh có độ phân giải thấp hơn được cắt hai lần trong quy trình xử lý hình ảnh, tạo ra FoV khác nhau giữa hình ảnh có độ phân giải cao và thấp.
  • Vòng tròn trong hình ảnh đã chụp bị cắt do yêu cầu chụp tỷ lệ khung hình quá mức làm giảm chiều cao hoặc chiều rộng của hình ảnh.
  • Hình tròn trong ảnh chụp có hình phản chiếu ở giữa và không được tô kín hoàn toàn.

test_multi_camera_alignment

Kiểm thử các thông số hiệu chuẩn máy ảnh liên quan đến vị trí đặt máy ảnh cho hệ thống nhiều máy ảnh. Sử dụng máy ảnh phụ vật lý nhiều máy ảnh, chụp ảnh bằng một trong các máy ảnh vật lý. Tìm tâm của hình tròn. Chiếu tâm vòng tròn lên toạ độ thế giới cho mỗi máy ảnh. So sánh sự khác biệt giữa tâm vòng tròn của các máy ảnh theo toạ độ thế giới. Dựng lại toạ độ thế giới về toạ độ pixel và so sánh với toạ độ gốc dưới dạng một bước kiểm tra tính hợp lệ. So sánh kích thước vòng tròn để kiểm tra xem tiêu cự của các máy ảnh có khác nhau hay không.

Các API đã kiểm thử:

Đạt: Tâm và kích thước của vòng tròn như dự kiến trong hình ảnh được chiếu so với hình ảnh được chụp bằng dữ liệu hiệu chuẩn máy ảnh và tiêu cự.

Cơ chế không thành công:

  • LENS_INTRINSIC_CALIBRATION, LENS_POSE_TRANSLATION hoặc LENS_POSE_ROTATION là các giá trị thiết kế chứ không phải dữ liệu hiệu chuẩn thực tế.
  • Hệ thống máy ảnh không phù hợp với chế độ thiết lập kiểm thử. Ví dụ: kiểm thử hệ thống camera góc rộng và góc siêu rộng bằng giàn thử nghiệm RFoV. Để biết thêm thông tin, hãy xem Câu hỏi thường gặp 1 về giải pháp ITS-in-a-box cho máy ảnh.

test_preview_aspect_ratio_and_crop

Tương tự như quy trình kiểm thử test_aspect_ratio_and_crop đối với ảnh tĩnh, quy trình kiểm thử này sẽ kiểm tra các định dạng xem trước được hỗ trợ để đảm bảo khung hình xem trước không bị kéo giãn hoặc cắt không phù hợp. Xác minh rằng tỷ lệ khung hình của vòng tròn không thay đổi, hình ảnh được cắt giữ vòng tròn ở giữa khung và kích thước vòng tròn không thay đổi đối với định dạng không đổi hoặc với độ phân giải khác nhau (kiểm tra trường nhìn).

API đã được kiểm thử:

Đạt: Hình ảnh không bị kéo giãn, trung tâm của hình ảnh không khác nhau quá 3% và FoV (góc nhìn) tối đa có thể được giữ nguyên.

test_preview_stabilization_fov

Kiểm tra các kích thước xem trước được hỗ trợ để đảm bảo cắt FoV cho phù hợp. Thử nghiệm này sẽ quay hai video, một video có tính năng chống rung khi xem trước ON và một video khác có tính năng chống rung khi xem trước OFF. Một khung hình đại diện được chọn từ mỗi video và được phân tích để đảm bảo rằng các thay đổi về FoV trong hai video nằm trong thông số kỹ thuật.

Các API đã kiểm thử:

Đạt: Tỷ lệ khung hình của vòng tròn vẫn giữ nguyên, vị trí trung tâm của vòng tròn vẫn ổn định và kích thước của vòng tròn thay đổi không quá 20%.

test_video_aspect_ratio_and_crop

Quay video có một hình tròn bên trong một hình vuông trên tất cả các định dạng video. Trích xuất các khung chính và xác minh rằng tỷ lệ khung hình của vòng tròn không thay đổi, hình ảnh bị cắt sẽ giữ cho vòng tròn ở chính giữa và kích thước vòng tròn không thay đổi theo định dạng không đổi hoặc có độ phân giải khác (kiểm tra trường nhìn).

Các API đã kiểm thử:

Đạt: Khung hình video không bị kéo giãn, tâm của khung hình không khác nhau quá 3% và FoV (góc nhìn) tối đa có thể được giữ nguyên.

scene5

Scene5 yêu cầu một cảnh màu xám được chiếu sáng đồng đều. Điều này được thực hiện bằng một bộ khuếch tán đặt trên ống kính máy ảnh. Bạn nên dùng bộ khuếch tán sau: www.edmundoptics.com/optics/window-diffusers/optical-diffusers/opal-diffusing-glass/46168.

Để chuẩn bị cảnh quay, hãy gắn một bộ khuếch tán ánh sáng ở phía trước máy ảnh và hướng máy ảnh về phía nguồn sáng có độ sáng khoảng 2000 lux. Hình ảnh được chụp cho cảnh 5 yêu cầu ánh sáng khuếch tán mà không có đặc điểm rõ ràng. Sau đây là hình ảnh mẫu:

scene5

cảnh quay 5

test_lens_shading_and_color_uniformity

Kiểm thử để đảm bảo rằng tính năng chỉnh sửa bóng của ống kính được áp dụng đúng cách và màu sắc của cảnh đồng nhất đơn sắc được phân phối đồng đều. Thực hiện kiểm thử này trên khung YUV với 3A tự động. Hiệu ứng đổ bóng ống kính được đánh giá dựa trên kênh y. Đo lường giá trị y trung bình cho mỗi khối mẫu được chỉ định và xác định đạt hoặc không đạt bằng cách so sánh với giá trị y ở giữa. Kiểm thử độ đồng nhất màu được đánh giá trong không gian r/g và b/g.

API đã được kiểm thử:

Đạt: Tại bán kính đã chỉ định của hình ảnh, độ biến thiên của giá trị r/g và b/g phải nhỏ hơn 20% để vượt qua bài kiểm thử.

cảnh 6

Scene6 là một lưới gồm các vòng tròn nhỏ với một hình vuông ở một góc để cho biết hướng. Bạn cần có các vòng tròn nhỏ để kiểm thử chức năng thu phóng trên một phạm vi lớn. Các kiểm thử trong scene6 có thể nhạy cảm với việc căn chỉnh, vì vậy, bắt đầu từ phiên bản 15, bạn có thể sử dụng check_alignment.py trong thư mục công cụ để bật tính năng kiểm tra DUT và căn chỉnh biểu đồ.

scene6

cảnh 6

test_in_sensor_zoom

Kiểm thử hành vi của tính năng thu phóng trong cảm biến của máy ảnh, tạo ra hình ảnh RAW đã cắt.

Với trường hợp sử dụng luồng được đặt thành CROPPED_RAW, quy trình kiểm thử sẽ chụp hai lần trong phạm vi thu phóng, một hình ảnh RAW có trường nhìn đầy đủ (FoV) và một hình ảnh RAW đã cắt. Quy trình kiểm thử này chuyển đổi hình ảnh thành mảng RGB, giảm kích thước hình ảnh RAW đã cắt ở kích thước đầy đủ xuống kích thước do SCALER_RAW_CROP_REGION báo cáo và tính toán chênh lệch trung bình gốc vuông (RMS) 3D giữa hai hình ảnh.

Các API đã kiểm thử:

Đạt: Chênh lệch trung bình vuông gốc (RMS) của 3D giữa hình ảnh RAW bị cắt theo tỷ lệ và hình ảnh RAW đầy đủ nhỏ hơn ngưỡng đặt trong thử nghiệm.

thử_thu phóng

Kiểm thử hành vi thu phóng của máy ảnh. Chụp ảnh trong phạm vi thu phóng và kiểm tra xem vòng tròn có lớn hơn khi máy ảnh phóng to hay không. Đối với mỗi định dạng (YUV, JPEG), cùng một phiên chụp ảnh sẽ được dùng để hội tụ 3A và chụp ảnh.

Các API đã kiểm thử:

Đạt: Kích thước tương đối của vòng tròn được chụp chính xác so với tỷ lệ thu phóng được yêu cầu để đảm bảo máy ảnh đang thu phóng chính xác.

test_zoom

test_zoom để tìm đường bao của vòng tròn gần tâm nhất.

test_low_latency_zoom

Kiểm thử hành vi thu phóng có độ trễ thấp của máy ảnh. Chụp ảnh trong phạm vi thu phóng bằng android.control.settingsOverride = 1 (SETTINGS_OVERRIDE_ZOOM) và kiểm tra xem các vòng tròn trong hình ảnh đầu ra có khớp với tỷ lệ thu phóng trong siêu dữ liệu chụp hay không. Cùng một phiên chụp ảnh bằng máy ảnh được dùng để hội tụ 3A và chụp ảnh.

Các API đã kiểm thử:

Đạt: Kích thước tương đối của vòng tròn được chụp là chính xác so với siêu dữ liệu kết quả về tỷ lệ thu phóng.

test_preview_video_zoom_match

Kiểm thử để đảm bảo rằng trong khi quay video và thu phóng, bản xem trước video và đầu ra video sẽ hiển thị và ghi lại cùng một kết quả. Tính toán kích thước của vòng tròn gần tâm nhất ở các tỷ lệ thu phóng khác nhau và kiểm tra xem kích thước của vòng tròn có tăng lên khi tỷ lệ thu phóng tăng lên hay không.

Các API đã kiểm thử:

Đạt: Kích thước tương đối của vòng tròn được chụp chính xác so với tỷ lệ thu phóng yêu cầu trong video và bản xem trước.

VGA_640x480_key_frame.png

VGA_640x480_key_frame.png (trước khi thu phóng)

preview_640x480_key_frame.png

preview_640x480_key_frame.png (trước khi thu phóng)

VGA_640x480_key_frame_zoomed.png

VGA_640x480_key_frame.png (sau khi thu phóng)

xem trước_640x480_key_frame_zoomed.png

preview_640x480_key_frame.png (sau khi thu phóng)

test_preview_zoom

Kiểm thử tỷ lệ thu phóng của mỗi khung xem trước khớp với siêu dữ liệu chụp tương ứng. Quy trình kiểm thử sẽ lấy các khung xem trước trong phạm vi thu phóng và tìm đường viền của vòng tròn gần tâm nhất. Sau đó, kiểm thử sẽ kiểm tra để đảm bảo rằng vòng tròn đã chọn lớn hơn và tâm của vòng tròn di chuyển ra khỏi tâm của hình ảnh khi máy ảnh thu phóng.

Các API đã kiểm thử:

Đạt: Kích thước tương đối của vòng tròn đã chọn là chính xác đối với tỷ lệ thu phóng được báo cáo của kết quả chụp tương ứng cho tất cả các khung xem trước. Khoảng cách tương đối của vòng tròn đã chọn tính từ tâm hình ảnh là chính xác đối với tỷ lệ thu phóng được báo cáo của kết quả chụp tương ứng của tất cả các khung xem trước.

test_zoom

hình ảnh test_preview_zoom hiển thị vòng tròn đã chọn gần tâm nhất

test_session_characteristics_zoom

Kiểm thử phạm vi tỷ lệ thu phóng cho tất cả cấu hình phiên được hỗ trợ liệt kê trong CameraCharacteristics#INFO_SESSION_CONFIGURATION_QUERY_VERSION. Đối với mỗi cấu hình đó, nếu CameraDeviceSetup#isSessionConfigurationSupported trả về giá trị true, thì quy trình kiểm thử sẽ xác minh rằng bạn có thể đạt được phạm vi tỷ lệ thu phóng được trả về trong CameraDeviceSetup#getSessionCharacteristics.

Các API đã kiểm thử:

Đạt: Bạn có thể đạt được cả tỷ lệ thu phóng tối thiểu và tối đa cho từng SessionConfiguration được hỗ trợ nêu trong CameraCharacteristics#INFO_SESSION_CONFIGURATION_QUERY_VERSION.

cảnh 7

Scene7 là một khung hình chữ nhật được chia thành 4 góc phần tư bằng nhau, mỗi góc được tô một màu riêng. Ở giữa hình chữ nhật là biểu đồ cạnh nghiêng để kiểm tra độ sắc nét. Bốn điểm đánh dấu ArUco được căn chỉnh với bốn góc ngoài của hình chữ nhật để hỗ trợ lấy toạ độ chính xác của khung hình chữ nhật chính ở các tỷ lệ thu phóng khác nhau.

scene7

scene7

test_multi_camera_switch

Thử nghiệm này xác minh rằng trong quá trình quay video xem trước ở nhiều tỷ lệ thu phóng, việc chuyển đổi giữa ống kính siêu rộng (UW) và ống kính rộng (W) sẽ mang lại các giá trị RGB tương tự nhau.

Quy trình kiểm thử sử dụng nhiều tỷ lệ thu phóng trong phạm vi đã xác định trước để thực hiện việc quay video xem trước động và xác định thời điểm máy ảnh thực thay đổi. Điểm này đánh dấu điểm chuyển đổi từ ống kính UW sang ống kính W.

Các khung hình được chụp tại và trước điểm chuyển đổi được phân tích để biết độ phơi sáng tự động (AE), cân bằng trắng tự động (AWB) và tự động lấy nét (AF).

Tính năng kiểm tra AE đảm bảo rằng độ thay đổi độ sáng nằm trong phạm vi dự kiến cho cả hình ảnh của ống kính UW và W. Quá trình kiểm tra AWB xác minh rằng tỷ lệ R/G và B/G nằm trong giá trị ngưỡng cho cả hình ảnh ống kính UW và W. Tính năng kiểm tra AF đánh giá giá trị ước tính độ sắc nét dựa trên cường độ chuyển màu trung bình giữa hình ảnh của ống kính UW và W.

Các API đã kiểm thử:

Đạt: Để kiểm thử đạt, tất cả các bước kiểm tra AE, AWB và AF đều phải đạt. Sau đây là tiêu chí cho từng bước kiểm tra:

  • Kiểm tra AE: Độ thay đổi độ sáng giữa hình ảnh của ống kính UW và W phải nhỏ hơn 0,5%.
  • Kiểm tra AWB: Sự khác biệt giữa các giá trị R/G và B/G cho hình ảnh của ống kính UW và W phải nhỏ hơn 0,5%.
  • Kiểm tra lấy nét tự động: Sự thay đổi độ sắc nét giữa hình ảnh ống kính UW và W phải nhỏ hơn 2%.

scene8

Cảnh 8 là một khung hình chữ nhật được chia thành 4 vùng bằng nhau, mỗi vùng chứa một bức ảnh chân dung được chụp với độ phơi sáng khác nhau hoặc được phủ một màu sắc khác nhau (màu xanh dương, độ phơi sáng tăng, độ phơi sáng giảm, bóng màu vàng). Bốn điểm đánh dấu ArUco được căn chỉnh với bốn góc ngoài của hình chữ nhật để lấy toạ độ chính xác của khung hình chữ nhật chính.

scene8

scene8

các_khu_vực_test_ae_awb

Kiểm thử sự khác biệt về giá trị RGB và luma khi xem trước bản ghi ở các vùng tự động phơi sáng (AE) và cân bằng trắng tự động (AWB) khác nhau.

Bài kiểm thử này ghi lại bản ghi xem trước 8 giây, thực hiện đo sáng AE và AWB trên mỗi góc phần tư trong hai giây mỗi góc. Sau đó, quy trình kiểm thử sẽ trích xuất một khung hình từ bản ghi xem trước của từng khu vực và sử dụng các khung đã trích xuất để thực hiện các bước kiểm tra AE và AWB sau đây:

  • Kiểm tra AE: Xác minh rằng khung hình đo sáng khu vực có độ phơi sáng giảm có giá trị luma tăng hơn 1% so với khung hình đo sáng khu vực có độ phơi sáng tăng. Điều này xác minh rằng hình ảnh được làm sáng khi đo sáng một vùng tối.
  • Kiểm tra AWB: Xác minh rằng tỷ lệ màu đỏ so với màu xanh dương (trong giá trị RGB trung bình của hình ảnh) trong khung có vùng đo sáng màu xanh dương cao hơn 2% so với khung có vùng đo sáng màu vàng. Điều này xác minh rằng hình ảnh có giá trị RGB cân bằng khi đo sáng một vùng màu vàng (ấm) hoặc màu xanh dương (lạnh).

Các API đã kiểm thử:

Đạt: Cả hai quy trình kiểm tra AE và AWB đều đạt.

scene9

Scene9 bao gồm hàng nghìn vòng tròn có kích thước và màu sắc ngẫu nhiên để tạo một cảnh có khả năng lặp lại rất thấp nhằm nhấn mạnh các thuật toán nén JPEG.

cảnh 9

cảnh 9

test_jpeg_high_entropy

Kiểm thử tính năng nén JPEG của máy ảnh trên scene9 với độ hỗn loạn cao và hệ số chất lượng JPEG được đặt thành 100%. Hệ số thu phóng được tăng lên để đảm bảo cảnh hiển thị trên máy tính bảng lấp đầy trường nhìn của máy ảnh.

API đã được kiểm thử:

Đạt: Tệp JPEG được nén đúng cách, ghi và đọc lại từ ổ đĩa.

test_jpeg_quality

Kiểm tra chất lượng nén ảnh JPEG của máy ảnh. Bước chất lượng JPEG thông qua android.jpeg.quality và đảm bảo Bảng lượng tử hoá thay đổi chính xác.

Các API đã kiểm thử:

Đạt: Ma trận lượng tử hoá giảm khi chất lượng tăng. (Ma trận biểu thị hệ số chia.)

test_jpeg_quality

Độ sáng trung bình của ma trận DQT/sắc độ của camera sau trên Pixel 4 so với chất lượng JPEG

test_jpeg_quality không thành công

Ví dụ về kiểm thử không thành công

Xin lưu ý rằng đối với hình ảnh có chất lượng rất thấp (jpeg.quality < 50), mức độ nén trong ma trận lượng tử hoá sẽ không tăng lên.

scene_video

Cảnh scene_video là một cảnh video. Ảnh này bao gồm 4 vòng tròn có màu khác nhau di chuyển qua lại ở các tốc độ khung hình khác nhau trên nền trắng.

scene_video

thử nghiệm_xem trước_khung_hình_drop

Kiểm thử để đảm bảo tốc độ khung hình xem trước được yêu cầu được duy trì với cảnh động. Quy trình kiểm tra này chạy trên tất cả các máy ảnh tiếp xúc với các ứng dụng bên thứ ba.

Các API đã kiểm thử:

Đạt: Tốc độ khung hình xem trước ở mức tối đa trong phạm vi tốc độ khung hình được yêu cầu và độ biến thiên trung bình giữa các khung hình liên tiếp nhỏ hơn dung sai tương đối được đặt trong kiểm thử.

scene_extensions

Các kiểm thử scene_extensions dành cho tiện ích máy ảnh và phải sử dụng Camera ITS-in-a-Box vì các kiểm thử này yêu cầu kiểm soát chính xác môi trường kiểm thử. Ngoài ra, bạn phải kiểm soát mọi tình trạng rò rỉ ánh sáng. Điều này có thể yêu cầu bạn phải che thiết bị thử nghiệm, thiết bị được kiểm thử (DUT) và máy tính bảng bằng vải chống thấm cũng như loại bỏ tình trạng rò rỉ ánh sáng từ màn hình trước của DUT.

scene_hdr

Cảnh scene_hdr bao gồm một bức chân dung ở bên trái và một mã QR có độ tương phản thấp ở bên phải.

scene_hdr

scene_hdr

test_hdr_extension

Kiểm thử tiện ích HDR. Chụp ảnh có và không bật tiện ích, đồng thời kiểm tra xem tiện ích có giúp phát hiện mã QR dễ dàng hơn hay không.

Các API đã kiểm thử:

Đạt: Tiện ích HDR làm giảm số lần thay đổi độ tương phản cần thiết để phát hiện mã QR hoặc giảm độ dốc trên mã QR.

scene_low_light

Cảnh scene_low_light bao gồm một lưới hình vuông có nhiều sắc độ màu xám trên nền đen và lưới hình vuông được liên kết bằng đường viền màu đỏ. Các hình vuông được sắp xếp theo hướng đường cong Hilbert.

scene_low_light

cảnh_sáng_thấp

tiện_ích_ban_đêm

Kiểm thử tiện ích ban đêm. Chụp ảnh khi bật tiện ích và thực hiện các thao tác sau:

  • Phát hiện sự hiện diện của 20 hình vuông
  • Tính toán độ chói được giới hạn bởi mỗi hình vuông
  • Tính toán giá trị luma trung bình của 6 hình vuông đầu tiên theo hướng lưới đường congHilbert
  • Tính toán chênh lệch về giá trị luma của các hình vuông liên tiếp (ví dụ: hình vuông 2 – hình vuông 1) cho đến hình vuông 5 và 6 (hình vuông 6 – hình vuông 5) rồi tìm trung bình cộng của 5 chênh lệch đã tính.

Các API đã kiểm thử:

Đạt: Giá trị luma trung bình của 6 hình vuông đầu tiên phải ít nhất là 85, và mức chênh lệch trung bình về giá trị luma của các hình vuông liên tiếp cho đến hình vuông 5 và 6 phải ít nhất là 17.

Biểu đồ độ chói sau đây cho thấy kết quả kiểm thử đạt yêu cầu.

vé_xem_cảnh_low_light_night_pass

test_low_light_boost_extension

Kiểm thử chế độ Tăng cường ánh sáng yếu AE. Nếu Camera2 hỗ trợ chế độ AE tăng cường ánh sáng yếu, thì thử nghiệm này sẽ được thực hiện cho Camera2. Nếu tiện ích máy ảnh ở chế độ ban đêm được hỗ trợ và tiện ích đó hỗ trợ chế độ AE tăng cường ánh sáng yếu, thì quá trình kiểm thử này cũng sẽ được thực hiện cho tiện ích máy ảnh ở chế độ ban đêm. Quy trình kiểm thử này đặt chế độ AE thành tăng cường ánh sáng yếu, lấy một khung hình từ bản xem trước và thực hiện các thao tác sau:

  • Phát hiện sự hiện diện của 20 hộp
  • Tính toán độ sáng được giới hạn bởi mỗi hộp
  • Tính toán giá trị luma trung bình của 6 hình vuông đầu tiên theo hướng lưới đường congHilbert
  • Tính toán chênh lệch về giá trị luma của các hình vuông liên tiếp (ví dụ: hình vuông 2 – hình vuông 1) cho đến hình vuông 5 và 6 (hình vuông 6 – hình vuông 5) rồi tìm trung bình cộng của 5 chênh lệch đã tính.

API đã được kiểm thử:

Đạt: Giá trị luma trung bình của 6 ô đầu tiên phải ít nhất là 70, và mức chênh lệch trung bình về giá trị luma của các ô liên tiếp cho đến ô 5 và 6 phải ít nhất là 17.

scene_flash

Các thử nghiệm scene_flash yêu cầu cảnh tối trong hộp hợp nhất cảm biến.

kiểm tra_tự động_flash

Các quá trình kiểm thử cho thấy tính năng flash tự động được kích hoạt trong cảnh tối cho máy ảnh mặt sau và mặt trước. Đối với máy ảnh mặt trước, tính năng flash tự động sử dụng màn hình để chiếu sáng cảnh, chứ không phải đơn vị đèn flash thực. Quy trình kiểm thử xác minh rằng tính năng tự động bật đèn flash được kích hoạt bằng cách kiểm tra để đảm bảo rằng trung tâm của hình ảnh xếp kề sáng hơn khi bật tính năng tự động bật đèn flash. Để kích hoạt tính năng tự động flash, bạn phải tắt đèn trong thiết bị kiểm thử. Bạn có thể tắt đèn tự động bằng bộ điều khiển Arduino. Cảnh phải hoàn toàn tối để quy trình kiểm thử hoạt động chính xác. Bạn phải cài đặt Ứng dụng máy ảnh Jetpack (JCA) trên thiết bị trước khi kiểm thử. Tính năng tự động bật đèn flash cho camera sau dựa vào trạng thái AE để kích hoạt, nhưng tính năng tự động bật đèn flash cho camera trước không dựa vào AE và luôn được kích hoạt.

Các API đã kiểm thử:

Đạt: Trung tâm của hình ảnh xếp kề có bật tính năng tự động bật đèn flash sáng hơn hình ảnh cảnh gốc đối với tất cả máy ảnh.

test_flash_strength

Kiểm thử để đảm bảo rằng chế độ kiểm soát cường độ đèn flash ở chế độ SINGLE được triển khai đúng cách.

Xác minh rằng nếu thiết bị hỗ trợ tính năng kiểm soát cường độ đèn flash trong khi sử dụng máy ảnh ở chế độ SINGLE, thì cường độ đèn flash sẽ thay đổi theo các mức cường độ được yêu cầu. Xác minh rằng tính năng kiểm soát cường độ đèn flash hoạt động với nhiều AE_MODES. Ví dụ: nếu chế độ tự động phơi sáng là ON hoặc OFF, thì cường độ đèn flash sẽ ảnh hưởng đến độ sáng và nếu chế độ là ON_AUTO_FLASH, thì cường độ đèn flash sẽ không ảnh hưởng đến độ sáng. Để tiến hành kiểm thử, bạn phải tắt đèn trong giàn thử nghiệm. Bạn có thể tự động tắt đèn bằng bộ điều khiển Arduino. Cảnh phải hoàn toàn tối để kiểm thử hoạt động chính xác.

API đã được kiểm thử:

Đạt:

Khi chế độ tự động phơi sáng là ON hoặc OFF, độ sáng của các mảng hình ảnh sẽ tăng lên khi mức độ mạnh của đèn flash tăng từ không có đèn flash đến FLASH_SINGLE_STRENGTH_MAX_LEVEL. Khi chế độ phơi sáng tự động là ON_AUTO_FLASH, độ chênh lệch về độ sáng của các mảng hình ảnh sẽ nằm trong phạm vi dung sai vì mức độ cường độ đèn flash tăng từ không có đèn flash lên FLASH_SINGLE_STRENGTH_MAX_LEVEL.

test_led_snapshot

Kiểm tra để đảm bảo ảnh chụp nhanh bằng đèn LED không làm bão hoà hoặc phủ màu hình ảnh.

Bài kiểm thử này thêm một bộ điều khiển ánh sáng vào hộp hợp nhất cảm biến để kiểm soát ánh sáng. Khi đèn được đặt thành OFF, bài kiểm thử sẽ chụp ảnh với chế độ AUTO_FLASH được đặt thành ON. Trong quá trình chụp này, chương trình kiểm thử sẽ chạy một trình tự chụp trước với điều kiện kích hoạt aePrecapture được đặt thành START và đặt ý định chụp thành Preview để chụp ảnh bằng đèn flash.

Vì ảnh chụp có một điểm nóng đặc biệt do đèn flash, nên quy trình kiểm thử sẽ tính toán giá trị trung bình của hình ảnh đèn flash trong toàn bộ ảnh chụp và xác minh xem giá trị đó có nằm trong phạm vi (68, 102) hay không. Để kiểm tra xem hình ảnh có cân bằng trắng hợp lý hay không, quy trình kiểm thử sẽ tính toán tỷ lệ R/G và B/G, đồng thời xác minh xem các tỷ lệ này có nằm trong khoảng từ 0,95 đến 1,05 hay không.

API đã được kiểm thử:

Đạt: Tỷ lệ R/G và B/G nằm trong khoảng từ 0,95 đến 1,05. Giá trị trung bình của hình ảnh chụp bằng đèn flash nằm trong phạm vi (68, 102).

tỷ lệ_xem trước_tối_nhất

Kiểm thử để đảm bảo tốc độ khung hình xem trước giảm chính xác trong cảnh tối. Để quy trình kiểm thử này hoạt động chính xác, bộ điều khiển phải tắt đèn trong giàn thử nghiệm hoặc người vận hành thử nghiệm phải tắt đèn theo cách thủ công.

Các API đã kiểm thử:

Đạt: Tốc độ khung hình xem trước ở mức tối thiểu trong phạm vi tốc độ khung hình được yêu cầu và độ biến thiên giữa các khung hình nhỏ hơn dung sai tuyệt đối được đặt trong kiểm thử.

test_torch_strength

Kiểm thử để đảm bảo rằng chế độ kiểm soát cường độ đèn flash ở chế độ TORCH được triển khai đúng cách.

Xác minh rằng nếu thiết bị hỗ trợ tính năng kiểm soát cường độ đèn flash trong khi sử dụng máy ảnh ở chế độ TORCH, thì cường độ đèn pin sẽ thay đổi theo các mức cường độ được yêu cầu. Xác minh rằng tính năng kiểm soát độ mạnh đèn flash hoạt động với các AE_MODES khác nhau. Ví dụ: nếu chế độ tự động phơi sáng là ON hoặc OFF, thì cường độ đèn flash sẽ ảnh hưởng đến độ sáng và nếu chế độ là ON_AUTO_FLASH, thì cường độ đèn flash sẽ không ảnh hưởng đến độ sáng. Xác minh rằng độ mạnh đèn pin không thay đổi trong suốt thời gian chụp liên tục, mô phỏng một phiên quay video. Để tiến hành kiểm thử, bạn phải tắt đèn trong thiết bị kiểm thử. Bạn có thể tự động tắt đèn bằng trình điều khiển Arduino. Cảnh phải hoàn toàn tối để kiểm thử hoạt động chính xác.

Các API đã kiểm thử:

Mật khẩu:

Khi chế độ phơi sáng tự động là ON hoặc OFF, độ sáng của các mảng ảnh liên tục tăng lên khi mức độ sáng đèn flash tăng từ không có đèn flash lên FLASH_TORCH_STRENGTH_MAX_LEVEL. Khi chế độ phơi sáng tự động là ON_AUTO_FLASH, sự khác biệt về độ sáng của các mảnh chụp liên tục nằm trong dung sai vì mức độ cường độ đèn flash tăng từ không có flash lên FLASH_TORCH_STRENGTH_MAX_LEVEL.

cảm_biến_hợp_nhất

Kiểm thử hợp nhất cảm biến yêu cầu chuyển động điện thoại cụ thể trước mẫu bàn cờ và điểm đánh dấu ArUco. Để có kết quả tối ưu, hãy đảm bảo rằng biểu đồ kiểm thử được gắn phẳng. Các biểu đồ không phẳng ảnh hưởng đến việc tính toán độ xoay cho nhiều bài kiểm thử. Biểu đồ phải lấp đầy mặt sau của hộp kết hợp cảm biến bằng cách in ở kích thước 17"x17" (43x43 cm). Bạn có thể tự động hoá các bài kiểm thử sensor_fusion bằng Sensor Fusion Box (Hộp kết hợp cảm biến).

Biểu đồ hợp nhất cảm biến

Biểu đồ hợp nhất cảm biến

Biểu đồ kết hợp cảm biến trong Rig

Biểu đồ hợp nhất cảm biến lấp đầy mặt sau của hộp hợp nhất cảm biến

test_lens_intrinsic_calibration

Kiểm thử để đảm bảo tâm quang học của ống kính nội tại thay đổi khi ống kính di chuyển do tính năng ổn định hình ảnh quang học (OIS). Nếu các mẫu nội tại của ống kính được hỗ trợ, hãy kiểm tra xem tâm quang học của mẫu nội tại của ống kính thay đổi khi ống kính di chuyển nhờ tính năng ổn định hình ảnh quang học (OIS).

Các API đã kiểm thử:

Đạt: Tâm quang học của ống kính thay đổi nội tại từ một pixel trở lên. Nếu mẫu nội tại của ống kính được hỗ trợ, thì tâm quang của mẫu nội tại của ống kính sẽ thay đổi ít nhất một điểm ảnh.

test_lens_intrinsic_calibration_example.png

Ví dụ về biểu đồ test_lens_intrinsic_calibration cho thấy sự thay đổi của các điểm chính tính bằng pixel cho mỗi khung hình

test_multi_camera_frame_sync

Kiểm thử để đảm bảo dấu thời gian khung hình do máy ảnh logic chụp nằm trong khoảng 10 ms bằng cách tính toán các góc của hình vuông trong bàn cờ để xác định dấu thời gian.

Các API đã kiểm thử:

Đạt: Góc giữa hình ảnh từ mỗi máy ảnh không thay đổi đáng kể khi điện thoại được xoay.

test_preview_distortion

Kiểm thử để đảm bảo rằng sự méo hình được khắc phục trong mỗi khung xem trước được chụp ở nhiều mức thu phóng. Đối với mỗi khung xem trước, quy trình kiểm thử tính toán các điểm lý tưởng dựa trên hàm nội tại và ngoại vị của máy ảnh. Trong hình ảnh ví dụ, các điểm lý tưởng được hiển thị bằng màu xanh lục; các điểm thực tế được hiển thị bằng màu đỏ. Lỗi méo được tính toán dựa trên khoảng cách pixel trung bình gốc (RMS) giữa các điểm thực tế và điểm lý tưởng. Vùng sáng màu xanh lục và màu đỏ trên hình ảnh được dùng để phát hiện khu vực bị lỗi méo hình trực quan.

test_preview_distortion_example.jpg

Hình ảnh bàn cờ với các điểm lý tưởng có màu xanh lục và các điểm thực tế có màu đỏ

API đã được kiểm thử:

Đạt: Lỗi méo được chuẩn hoá của mỗi khung xem trước nhỏ hơn ngưỡng được đặt trong kiểm thử.

test_preview_stabilization

Kiểm thử video xem trước được ổn định xoay ít hơn so với con quay hồi chuyển.

API đã được kiểm thử:

Đạt: Góc xoay tối đa trên các khung hình nhỏ hơn 70% góc xoay của con quay hồi chuyển.

Sau đây là các video mẫu có và không có tính năng ổn định.

  • Video mẫu với tính năng chống rung

  • Video mẫu không có tính năng ổn định

test_sensor_fusion

Kiểm thử sự khác biệt về dấu thời gian giữa máy ảnh và con quay hồi chuyển cho các ứng dụng AR và VR. Điện thoại được xoay 90 độ 10 lần trước mẫu bàn cờ. Chuyển động bay khứ hồi khoảng 2 giây. Quy trình kiểm thử này sẽ bị bỏ qua nếu không có con quay hồi chuyển hoặc nếu bạn không bật tham số REALTIME nguồn dấu thời gian.

Kiểm thử test_sensor_fusion tạo ra một số biểu đồ. Hai biểu đồ quan trọng nhất để gỡ lỗi là:

  • test_sensor_fusion_gyro_events: Hiển thị các sự kiện con quay hồi chuyển cho điện thoại trong quá trình kiểm thử. Việc chuyển động theo hướng x và y ngụ ý rằng điện thoại không được gắn một cách an toàn trên giá treo, giúp giảm xác suất vượt qua quá trình kiểm thử. Số chu kỳ trong biểu đồ phụ thuộc vào tốc độ ghi để lưu khung hình.

    test_sensor_fusion_gyro_events.png

    test_sensor_fusion_gyro_events

  • test_sensor_fusion_plot_rotations: Cho biết cách căn chỉnh con quay hồi chuyển và sự kiện máy ảnh. Biểu đồ này phải cho thấy chuyển động khớp giữa máy ảnh và con quay hồi chuyển trong khoảng +/-1 ms.

    test_sensor_fusion_plot_rotations.png

    test_sensor_fusion_plot_rotations

Các API đã kiểm thử:

Đạt: Độ lệch của dấu thời gian của camera và con quay hồi chuyển nhỏ hơn 1 ms theo mục 7.3.9 của CDD về cảm biến có độ chân thực cao [C-2-14].

Cơ chế không thành công:

  • Lỗi chênh lệch: Độ lệch của máy ảnh-con quay hồi chuyển không được hiệu chỉnh chính xác trong khoảng +/-1 mili giây.
  • Thiếu khung hình: Quy trình không đủ nhanh để chụp 200 khung hình liên tiếp.
  • Lỗi ổ cắm: adb không thể kết nối đáng tin cậy với DUT đủ lâu để thực thi kiểm thử.
  • Biểu đồ không được gắn phẳng. Biểu đồ test_sensor_fusion_plot_rotations có các khung hình trong đó con quay hồi chuyển và góc xoay của máy ảnh thay đổi đáng kể khi máy ảnh xoay qua các phần không phẳng của biểu đồ.
  • Máy ảnh không được gắn phẳng. Biểu đồ test_sensor_fusion_gyro_events cho thấy chuyển động trong mặt phẳng X và Y. Lỗi này thường gặp hơn ở máy ảnh mặt trước vì máy ảnh sau thường có một gờ nổi lên trên phần còn lại của thân điện thoại, tạo ra độ nghiêng khi gắn mặt sau của điện thoại vào giá treo.

test_video_stabilization

Kiểm thử video được ổn định xoay ít hơn so với con quay hồi chuyển.

Các API đã kiểm thử:

Đạt: Độ xoay góc tối đa trên khung hình nhỏ hơn 60% độ xoay của con quay hồi chuyển.

Sau đây là các video mẫu có và không có tính năng ổn định.

  • Video mẫu với tính năng chống rung

  • Mẫu video chưa được ổn định

feature_combination

Các hoạt động kiểm thử feature_combination xác minh rằng các tính năng hoạt động đúng cách khi bạn bật nhiều tính năng máy ảnh cùng lúc. Các chương trình kiểm thử này sử dụng cùng một hình ảnh bàn cờ được dùng trong cảnh kết hợp cảm biến.

test_feature_combination

Kiểm thử tất cả các tổ hợp kết hợp luồng, tính năng ổn định bản xem trước, phạm vi FPS mục tiêu, video HDR 10 bit và Ultra HDR mà thiết bị máy ảnh hỗ trợ. Việc kiểm thử này tốn rất nhiều bộ nhớ, vì vậy, bạn nên sử dụng một máy chủ lưu trữ có ít nhất 128 GB RAM.

Đối với Android 15 trở lên, tệp cấu hình bao gồm trường log_feature_combo_support, mặc định là False. Khi bạn đặt trường log_feature_combo_support thành True, quy trình kiểm thử sẽ chạy mọi tổ hợp tính năng được hỗ trợ và ghi kết quả vào tệp proto mà không vượt qua quá trình kiểm thử. Để kiểm thử tính tuân thủ, bạn phải đặt trường log_feature_combo_support thành False.

Các API đã kiểm thử:

Đạt: Đối với mỗi tổ hợp tính năng được hỗ trợ:

  • Luồng xem trước sẽ được ổn định nếu tính năng ổn định bản xem trước đang bật.
  • Tốc độ khung hình xem trước nằm trong AE_TARGET_FPS_RANGE đã định cấu hình.
  • Hệ màu của luồng bản xem trước được ghi lại khớp với màu được thiết lập.
  • Ảnh chụp Ultra HDR có bản đồ khuếch đại hợp lệ.