임의 차트 분석 및 결과

임의 해도 모듈에서 출력되는 데이터는 Imatest의 다른 모듈에서 출력되는 데이터와 다릅니다.

임의 차트 모듈은 피처의 사용자 지정 레이아웃 개념을 기반으로 하므로 모듈에서 생성하는 측정 결과에는 고정된 구조가 없습니다. 대신 모듈은 테스트 이미지에서 관찰되는 내용을 바탕으로 결과를 생성합니다. 생성되는 결과 세트는 해당 피처 유형에 대해 사용 가능한 결과 세트(아래 설명 참조)와 각 분석 유형을 활성화 또는 비활성화하는 사용자 옵션에 따라 달라집니다.

예시: 경사진 모서리 ROI 출력

Imatest는 테스트 이미지에서 기울어진 모서리(SlantedEdgeFeature 또는 SlantedSquareFeature의 한쪽 면을 기반으로 함)를 감지하면 MTF(및 이를 통한 선명도), 색수차, 모서리 거칠기 등 기울어진 모서리에서 계산할 수 있는 모든 결과를 생성합니다. (단, 이러한 각 항목의 계산이 사용자 옵션에서 요청된 경우에 한하며, 일반적으로 기본적으로 요청됩니다.)

이러한 모든 결과는 출력 JSON에서 "Slanted_Edge_N"이라는 필드 항목 아래에 그룹화됩니다. 여기서 N은 해당 에지의 고유 인덱스입니다(자세한 내용은 아래 참조). 관찰된 에지를 기반으로 한 각 결과는 아래 다이어그램에서 볼 수 있듯이 고유한 항목을 갖게 됩니다.

ROI 결과와 시스템 결과 비교

간략히 말하자면, Imatest는 특정 ROI(투자 영역)에 기반한 측정값과 여러 ROI를 기반으로 전체 "시스템"에 대한 정보를 제공하는 측정값을 모두 제공합니다.

예를 들어, 단일 경사진 모서리를 관찰하는 것과 관련된 다양한 결과(위 그림 참조)는 모두 ROI 결과 인 반면, 전체 이미지 평면 주변의 여러 관찰 지점을 기반으로 하는 기하학적 왜곡 결과는 시스템 결과가 됩니다.

때때로 시스템 결과에는 ROI별 결과 배열이 포함되며, 관련 측정값은 이러한 하위 결과에 수집됩니다. 이는 노이즈, 톤 응답, 색상 정확도 등을 측정하는 데 사용되는 회색조 및 컬러 패치 특징에서 매우 일반적입니다. Imatest는 최상위 수준에서 각 패치에 대한 모든 결과를 개별적으로 제공할 수 있지만, 시스템 결과의 맥락에서 제공되는 것이 더 유용합니다.

ROI별 결과 인덱싱

ROI별 결과는 "<ROI TYPE>_N"이라는 필드에 있는 JSON 객체에 보고됩니다. 여기서 N은 특정 유형의 각 ROI를 식별하는 고유 인덱스 값입니다. (예: "Random_Field_1") 이러한 인덱스는 차트 정의 파일 에서 각 피처를 정의하는 "ind" 값 항목에 직접 대응합니다.

임의 결과 JSON에서 찾은 항목을 차트의 특정 피처와 연결하려면 차트 정의 파일과 상호 참조하십시오. (팁: 피처 인덱스를 표시하도록 선택한 경우 차트 정의 유틸리티가 유용할 수 있습니다.)

경사 모서리 인덱싱

경사진 모서리 ROI 인덱싱은 위 규칙을 확장한 것입니다. 이는 다음과 같은 이유로 필요합니다.

  1. 차트에 기울어진 모서리의 ROI를 생성하는 방법에는 SlantedEdgeFeature와 SlantedSquareFeature 두 가지가 있습니다.
  2. 각 SlantedSquareFeature는 4개의 경사진 모서리 ROI를 의미하지만, 그 자체로는 단 하나의 인덱스만 가지고 있습니다.

경사진 모서리에 대한 확장된 인덱싱 규칙은 다음과 같습니다(아래 그림 참조).

  1. 차트에 S 개의 SlantedEdgeFeatures가 정의되어 있는 경우, 처음 S 개의 인덱싱된 결과는 해당 SlantedEdgeFeatures에 해당합니다. (SlantedEdgeFeatures가 정의되지 않은 차트의 경우 S 는 0이므로, 기울어진 사각형에서 파생된 모든 모서리는 인덱스 1부터 시작합니다.)
  2. 모든 SlantedSquareFeature는 상단, 오른쪽, 하단, 왼쪽 모서리 순서로 네 개의 모서리 인덱스를 목록에 추가합니다. 이 인덱스가 추가되는 순서는 SlantedSquareFeature의 인덱스를 기준으로 합니다.

빨간색으로 윤곽선이 표시된 엣지 ROI는 파란색으로 표시된 고유하고 일관된 식별 지표를 가지고 있습니다. 이 지표는 테스트 이미지에서의 위치(또는 이미지에 나타나는지 여부)가 아닌 차트 정의 파일만을 기반으로 합니다.

결과 JSON 구조

임의 차트 모듈에서 출력되는 JSON 데이터는 다음과 같은 계층 구조를 갖습니다.

최상위 객체 (필드 포함)
정보 (실행 시간, Imatest 버전 등에 대한 정보를 포함하는 필드를 가진 객체)
Results_array_sources (다음 결과 배열을 생성하는 데 사용된 이미지 소스의 이름을 나타내는 문자열 배열)
결과 (Results_array_sources의 항목당 하나씩 포함된 객체 배열)

최상위 JSON 객체의 Results 항목은 배열이며, 각 항목에는 이미지에서 측정한 값이 포함됩니다. Results_array_sources 문자열 항목의 순서는 Results 배열에 포함된 결과 객체를 생성한 원본 이미지의 순서를 나타냅니다.

참고: 모듈이 단일 이미지에서 실행되는 경우에도 Results 및 Results_array_sources 필드는 각각 해당 항목을 포함하는 1개 요소 배열을 갖습니다. 이렇게 하면 JSON 구조가 더욱 일관되고 예측 가능해져 간단한 기계 파싱이 가능합니다.

다음은 Results 배열에 있는 객체의 계층 구조 목록입니다. 아래에서 굵게 표시된 텍스트는 JSON 객체를 나타내고, "[… something_n …]" 구문은 각각 다른 n 값(일반적으로 위에서 설명한 차트 기능 인덱스와 관련됨)으로 인덱싱된 객체 배열을 나타냅니다. 일반 텍스트는 객체 내의 필드를 나타냅니다.

(참고: 아래 출력 JSON에 대한 정보는 Imatest 최신 릴리스 기준의 구조를 나타냅니다. 이전 버전에서는 객체 이름 및 구성이 약간 다를 수 있습니다.)

ROI별 산출물

비스듬한 모서리

[ …
비스듬한_가장자리_n
투자수익률(ROI)

왼쪽 상단
너비
키
엣지 속성
정위
각도
다크_미인
빛_평균
다크_평균_린_노름
빛_평균_선형_정규분
MTF
mtf
주파수
mtf50
과도한 선명도 비율
급성
급성
CPIQ_QL
LCA
영역 픽셀
면적 비율
크로스픽셀
교차 퍼센트
R_G_델타픽셀
R_G_델타_퍼센트
B_G_델타픽셀
B_G_델타_퍼센트
… ]

낙엽/쏟아진 동전 무늬

[ …
랜덤 필드 n
투자수익률(ROI)
왼쪽 상단
너비
키
랜덤_다이렉트
주파수
mtf
텍스처_psd
노이즈_psd
급성
급성
CPIQ_QL
… ]

별들

[ …
스타_n
투자수익률(ROI)
왼쪽 상단
너비
키
MTF
주파수
mtf
반지름
각도
… ]

웨지

[ …
웨지_n
투자수익률(ROI)
왼쪽 상단
너비
키
쐐기
주파수
mtf
해상도 제한 막대
… ]

시스템 출력

색상
패치_색상
[ …
패치_n :
측정된_RGB
측정된_LAB
참조_LAB
델타_C
델타_E
델타_C_94
델타_E_94
델타_H_94
델타_C_2000
델타_E_2000
델타_H_2000
… ]

최대 색상 오류
델타_C
델타_E
델타_C_94
델타_E_94
델타_H_94
델타_C_2000
델타_E_2000
델타_H_2000

평균 색상 오류
델타_C
델타_E
델타_C_94
델타_E_94
델타_H_94
델타_C_2000
델타_E_2000
델타_H_2000

CPIQ_색상_채도
CPIQ_컬러_OM
CPIQ_컬러_QL

시스템_LCA
rg_fit_coeffs
bg_fit_coeffs
rg_델타_픽셀
배경 델타 픽셀
CPIQ_픽셀
CPIQ_지표
CPIQ_QL

음색 분석
참조_y
측정된_y
측정된_루마
핏_감마
노출 오류 fstops

소음
ISOsnr
포화도Lum
CPIQ_visual_noise_OM
CPIQ_visual_noise_QL
[ …
패치_n
루마_std
r_std
g_std
b_std
Lstar_std
아스타_std
bstar_std
장면 참조 노이즈
장면RefSNR
CPIQ_시각적_잡음
시각적 노이즈
평균_L
평균_a
평균_b
var_L
var_a
var_b
코브라
ISO_시각적_잡음
시각적 노이즈
평균_L
mean_u
평균_v
시그마_L
시그마_u
시그마_v
horz_freq_content
horz_val_content
수평 주파수 콘텐츠 피크
horz_val_content_peak
horz_freq_content_interp
horz_val_content_interp
수직 빈도 콘텐츠
vert_val_content
수직 주파수 콘텐츠 피크
vert_val_content_peak
수직 빈도 콘텐츠 인터프리터
vert_val_content_interp
… ]

균일성_그리드
*선택된 채널*_그리드 (참고: 균일도 그리드 채널이 여러 개 선택될 수 있으며, 각 채널마다 항목이 있습니다.)
*선택된 색상 오류*_deltaC (참고: 균일도 격자 색상 오류가 여러 개 발생할 수 있으며, 각 오류마다 두 개의 항목이 표시됩니다.)
*선택된 색상 오류*_deltaE
CPIQ_결과
색상_균일성
옴
QL

동영상 분석 결과

자동 노출
패치 인덱스
프레임 시간(초)
장면 전환
장면 전환 시작 시간(초)
장면 전환 시간(초)
장면 전환_흥망성쇠
수렴
수렴 시작 시간(초)
수렴 시간(초)
수렴 목표
수렴_안정성
VCX_결과
VCX_버전
Patch_Index_VCX
장면 전환 시작 VCX 초
수렴 시간 시작 VCX 초
수렴 시간(VCX초)
컨버전스_타겟_VCX
수렴_안정성_VCX

출력 파일 이름 및 위치

출력 파일 이름은 다음과 같은 형식으로 지정됩니다.

<차트 이름>-<테스트 이미지 이름>.json , INI 필드 [arbcharts] combineOutput 이 0인 경우( 설정 페이지 참조) 또는:

<차트 이름>-배치-<타임스탬프>.json , [arbcharts] combineOutput이 1인 경우.

<차트 이름>-VideoAnalysis-<타임스탬프>.json , [arbcharts] doVideoAnalysis 가 1이고 유효한 비디오 파일이 분석된 경우.

어디:

이 모듈의 출력 파일은 기본적으로 사용자 홈 디렉터리의 "Results" 하위 폴더에 저장됩니다. 출력 파일은 임의 차트 GUI 창의 "출력 저장 디렉터리" 필드에 유효한 경로를 입력하거나(또는 INI 파일의 [arbcharts] save_dir_name 항목에 유효한 경로 문자열을 입력하여) 사용자가 원하는 위치로 저장할 수 있습니다. 이 경로는 현재 사용자의 권한으로 디스크에 쓰기 권한이 있어야 하며, 해당 디렉터리가 존재해야 합니다. 경로를 지정하면 이후 실행 시 "Results" 하위 폴더가 해당 위치에 강제로 생성됩니다.