measureNoise
テスト チャートのノイズの測定
説明
esfrChart オブジェクト
            グレー関心領域 (ROI) を自動的に検出する場合は、esfrChart オブジェクトを使用します。esfrChart オブジェクトは、Imatest® eSFR テスト チャートの強調版または拡張版をサポートしています[1]。
noiseValues = measureNoise(chart)
テスト チャート イメージ (R2024a 以降)
esfrChart オブジェクトでサポートされていないその他のタイプのテスト チャートの場合、テスト チャート イメージを使用します。ROI の位置を特定しなければなりません。
noiseValues = measureNoise(im,roiPositions)im の位置 roiPositions における ROI 内のノイズを測定します。
例
eSFR チャートのイメージをワークスペースに読み取ります。
I = imread("eSFRTestImage.jpg");esfrChart オブジェクトを作成し、ROI 注釈を含むチャートを表示します。20 個のグレー パッチ ROI には赤色の数字でラベル付けされています。
chart = esfrChart(I);
displayChart(chart,displayColorROIs=false, ...
    displayEdgeROIs=false,displayRegistrationPoints=false)
すべてのグレー パッチ ROI でノイズを測定します。
noiseTable = measureNoise(chart)
noiseTable=20×22 table
    ROI    MeanIntensity_R    MeanIntensity_G    MeanIntensity_B    RMSNoise_R    RMSNoise_G    RMSNoise_B    PercentNoise_R    PercentNoise_G    PercentNoise_B    SignalToNoiseRatio_R    SignalToNoiseRatio_G    SignalToNoiseRatio_B    SNR_R     SNR_G     SNR_B     PSNR_R    PSNR_G    PSNR_B    RMSNoise_Y    RMSNoise_Cb    RMSNoise_Cr
    ___    _______________    _______________    _______________    __________    __________    __________    ______________    ______________    ______________    ____________________    ____________________    ____________________    ______    ______    ______    ______    ______    ______    __________    ___________    ___________
     1         9.4147             11.349             11.099           2.6335        1.9417        2.3106          1.0328           0.76145           0.90613               3.5749                  5.8448                  4.8036           11.065    15.335    13.631     39.72    42.367    40.856      1.6708        0.53508         1.0745  
     2         9.2873             10.896             10.503            2.405        2.1309        2.0966         0.94312           0.83564           0.82218               3.8617                  5.1132                  5.0099           11.736    14.174    13.996    40.509     41.56    41.701       1.736        0.26598        0.97869  
     3         13.488              14.95             15.017           2.4966        2.1156        2.5593         0.97907           0.82964            1.0036               5.4027                  7.0668                  5.8676           14.652    16.984    15.369    40.184    41.622    39.968      1.7942        0.73421          1.053  
     4         20.411             21.689             22.946           2.4395        2.0206        2.5556         0.95668           0.79241            1.0022               8.3666                  10.734                  8.9791           18.451    20.615    19.065    40.385    42.021    39.981      1.7945        0.68449        0.84796  
     5         29.189             34.144             38.442           3.0436        2.8317        4.1125          1.1936            1.1105            1.6127               9.5903                  12.058                  9.3476           19.637    21.625    19.414    38.463     39.09    35.849       2.304         1.3083         1.1864  
     6         35.009             40.337             47.544           3.2201        2.7705        3.6994          1.2628            1.0865            1.4508               10.872                   14.56                  12.852           20.726    23.263    22.179    37.973     39.28    36.768      2.3869         1.2887         1.1016  
     7         50.768             58.206             69.539           3.3931        3.2661         3.734          1.3306            1.2808            1.4643               14.962                  17.821                  18.623             23.5    25.019    25.401    37.519     37.85    36.687      2.7733        0.95879         0.7594  
     8         61.871              69.98             80.779           3.4734        3.0966        3.1214          1.3621            1.2144            1.2241               17.813                  22.599                  25.879           25.015    27.082    28.259    37.316    38.313    38.244      2.5957        0.54197         1.0178  
     9         77.115             83.999             96.869           3.1467        2.9973        3.5088           1.234            1.1754             1.376               24.507                  28.025                  27.607           27.786    28.951    28.821    38.174    38.596    37.228      2.5474        0.88964        0.86929  
    10         88.552             98.426             113.87           3.1846        2.8538        3.1835          1.2488            1.1191            1.2484               27.807                   34.49                  35.767           28.883    30.754     31.07     38.07    39.022    38.073      2.4073        0.66975        0.84965  
    11         107.25             116.97             132.94           3.3128        3.0561        3.2921          1.2991            1.1985             1.291               32.374                  38.275                  40.381           30.204    31.658    32.123    37.727    38.427    37.781      2.6024        0.74358        0.61288  
    12         124.23             131.96             146.27           3.3817        3.0611        3.3879          1.3262            1.2004            1.3286               36.737                  43.109                  43.175           31.302    32.691    32.705    37.548    38.413    37.532      2.5943        0.83876        0.64368  
    13         143.52              149.3             164.52            2.922        2.6763        3.0484          1.1459            1.0495            1.1954               49.116                  55.787                  53.969           33.824    34.931    34.643    38.817     39.58     38.45      2.3583        0.63626        0.41777  
    14         156.87             165.76             178.05           3.2507        2.6489        2.7331          1.2748            1.0388            1.0718               48.258                  62.577                  65.148           33.671    35.928    36.278    37.891    39.669    39.398      2.2933        0.43831        0.99995  
    15         178.25             184.59              193.3           2.8498         2.474        2.6084          1.1176            0.9702            1.0229               62.548                  74.612                  74.106           35.924    37.456    37.397    39.035    40.263    39.803      2.1997        0.32357         0.8789  
    16         193.81             196.97             203.42           2.2181        2.1638        2.6139         0.86985           0.84853            1.0251               87.375                  91.029                   77.82           38.828    39.184    37.822    41.211    41.427    39.785      1.8003         0.8909        0.42809  
      ⋮
20 個のグレー パッチ ROI 全体で、3 つのカラー チャネルの平均信号と S/N 比 (SNR) のグラフを表示します。
figure subplot(1,2,1) plot(noiseTable.ROI,noiseTable.MeanIntensity_R,"r-o", ... noiseTable.ROI,noiseTable.MeanIntensity_G,"g-o", ... noiseTable.ROI,noiseTable.MeanIntensity_B,"b-o") title("Signal") ylabel("Intensity") xlabel("Gray ROI Number") grid on subplot(1,2,2) plot(noiseTable.ROI,noiseTable.SNR_R,"r-^", ... noiseTable.ROI,noiseTable.SNR_G,"g-^", ... noiseTable.ROI,noiseTable.SNR_B,"b-^") title("SNR") ylabel("dB") xlabel("Gray ROI Number") grid on

カスタム テスト チャートのイメージを読み取って表示します。
I = imread("RGBColorPatches.jpg");
imshow(I)
赤、緑、青、およびグレーのパッチの ROI を描画します。
numROIs = 4; roiPos = zeros(numROIs,4); for cnt = 1:numROIs hrect = drawrectangle; roiPos(cnt,:) = hrect.Position; end

ROI のノイズを計算します。
noiseValues = measureNoise(I,roiPos)
noiseValues=4×23 table
    ROI    MeanIntensity_R    MeanIntensity_G    MeanIntensity_B    RMSNoise_R    RMSNoise_G    RMSNoise_B    PercentNoise_R    PercentNoise_G    PercentNoise_B    SignalToNoiseRatio_R    SignalToNoiseRatio_G    SignalToNoiseRatio_B    SNR_R     SNR_G     SNR_B     PSNR_R    PSNR_G    PSNR_B    RMSNoise_Y    RMSNoise_Cb    RMSNoise_Cr          ROIPosition       
    ___    _______________    _______________    _______________    __________    __________    __________    ______________    ______________    ______________    ____________________    ____________________    ____________________    ______    ______    ______    ______    ______    ______    __________    ___________    ___________    ________________________
     1         153.13             51.698             75.863           3.6607        3.2828        3.6057          1.4356            1.2874             1.414               41.832                  15.748                   21.04            32.43    23.945    26.461     36.86    37.806    36.991       2.529        1.0612          1.6642       34    131     59     62
     2          78.51             135.38             72.137           4.0934        3.2363        3.9369          1.6053            1.2692            1.5439               19.179                   41.83                  18.323           25.657     32.43     25.26    35.889     37.93    36.228      2.8095        1.3295          1.4213       41     38     60     63
     3         54.715             79.381             185.87            3.025        2.7912        3.5732          1.1863            1.0946            1.4012               18.088                   28.44                  52.019           25.148    29.078    34.323    38.516    39.215     37.07      2.3571        1.2146          0.7323      136     35     63     66
     4         194.31             197.07              203.8            2.184        2.0924        2.5672         0.85645           0.82055            1.0068               88.971                  94.184                  79.384           38.985     39.48    37.995    41.346    41.718    39.941      1.6667        1.0141         0.51731      161    152     55     60
入力引数
出力引数
ROI のノイズ値。table として返されます。この table には、各 ROI での測定値が 1 行ずつ格納されます。この table には常に次の変数 (列) が含まれます。
| 変数 | 説明 | 
|---|---|
| ROI | サンプリングされた ROI のインデックス。 | 
イメージが esfrChart オブジェクトまたは RGB テスト チャート イメージである場合、この table にはさらに次の変数が含まれます。
| 変数 | 説明 | 
|---|---|
| MeanIntensity_R | ROI 内の赤のチャネル ピクセルの平均値。 | 
| MeanIntensity_G | ROI 内の緑のチャネル ピクセルの平均値。 | 
| MeanIntensity_B | ROI 内の青のチャネル ピクセルの平均値。 | 
| RMSNoise_R | ROI 内の赤のチャネル ピクセルの平方根平均二乗 (RMS) ノイズ。 | 
| RMSNoise_G | ROI 内の緑のチャネル ピクセルの RMS ノイズ。 | 
| RMSNoise_B | ROI 内の青のチャネル ピクセルの RMS ノイズ。 | 
| PercentNoise_R | 赤のピクセルの RMS ノイズ。元のチャート イメージのデータ型の最大値に対するパーセントで表します。 | 
| PercentNoise_G | 緑のピクセルの RMS ノイズ。元のチャート イメージのデータ型の最大値に対するパーセントで表します。 | 
| PercentNoise_B | 青のピクセルの RMS ノイズ。元のチャート イメージのデータ型の最大値に対するパーセントで表します。 | 
| SignalToNoiseRatio_R | 赤のチャネルにおける信号 ( MeanIntensity_R) とノイズ (RMSNoise_R) の比。 | 
| SignalToNoiseRatio_G | 緑のチャネルにおける信号 ( MeanIntensity_G) とノイズ (RMSNoise_G) の比。 | 
| SignalToNoiseRatio_B | 青のチャネルにおける信号 ( MeanIntensity_B) とノイズ (RMSNoise_B) の比。 | 
| SNR_R | 赤のチャネルのデシベル単位の S/N 比 (SNR)。 
 | 
| SNR_G | 緑のチャネルの SNR (dB 単位)。 
 | 
| SNR_B | 青のチャネルの SNR (dB 単位)。 
 | 
| PSNR_R | 赤のチャネルのピーク SNR (pSNR) (dB 単位)。 | 
| PSNR_G | 緑のチャネルの pSNR (dB 単位)。 | 
| PSNR_B | 青のチャネルの pSNR (dB 単位)。 | 
| RMSNoise_Y | ROI 内の輝度 (Y) チャネル ピクセルの RMS ノイズ。 | 
| RMSNoise_Cb | ROI 内の色差 (Cb) チャネル ピクセルの RMS ノイズ。 | 
| RMSNoise_Cr | ROI 内の色差 (Cr) チャネル ピクセルの RMS ノイズ。 | 
イメージがグレースケール テスト チャート イメージ im である場合、この table にはさらに次の変数が含まれます。
| 変数 | 説明 | 
|---|---|
| MeanIntensity_I | ROI 内のピクセルの平均値。 | 
| RMSNoise_I | ROI 内のピクセルの平方根平均二乗 (RMS) ノイズ。 | 
| PercentNoise_I | ピクセルの RMS ノイズ。元のチャート イメージのデータ型の最大値に対するパーセントで表します。 | 
| SignalToNoiseRatio_I | 信号 ( MeanIntensity_I) とノイズ (RMSNoise_I) の比。 | 
| SNR_I | S/N 比 (SNR) (dB 単位)。 
 | 
| PSNR_I | ピーク SNR (dB 単位)。 | 
テスト チャート イメージ im を指定した場合、この table にはさらに次の列が含まれます。
| 変数 | 説明 | 
|---|---|
| ROIPositions | ROI の位置。 [X Y Width Height]の形式の 4 要素ベクトルとして返されます。XとYは ROI の左上隅の座標です。WidthとHeightは ROI の幅と高さ (ピクセル単位) です。 | 
table 内の測定値へのアクセスに関する詳細については、ノイズ測定値へのアクセスを参照してください。
詳細
ノイズ テーブル内の変数の順序は、テスト チャート イメージ im とチャート オブジェクト chart のどちらを入力するかによって異なります。ノイズ テーブル内の変数にアクセスする必要がある場合、数値インデックスではなく変数名を参照します。
たとえば、ノイズ テーブル内の変数 MeanIntensity_R にアクセスするには、次のようなコードを使用します。
mean_R = noiseValues.MeanIntensity_R;
別の例として、インデックスが 3 の ROI のピーク SNR 値にアクセスするには、次のようなコードを使用します。最初のコマンドは、インデックスが 3 の ROI のテーブルに含まれる変数 PSNR_R、PSNR_G、および PSNR_B を返します。2 番目のコマンドは、このテーブルを数値行ベクトルに変換します。
psnr_RGB_3 = noiseValues(noiseValues.ROI==3,["PSNR_R" "PSNR_G" "PSNR_B"]); psnr_RGB_3 = psnr_RGB_3{1,:};
なお、これらの 2 つの操作は以下の 1 つのコマンドで実行できます。
psnr_RGB_3 = noiseValues{noiseValues.ROI==3,["PSNR_R" "PSNR_G" "PSNR_B"]}詳細については、table 内のデータへのアクセスおよび cell 配列のデータへのアクセスを参照してください。
ヒント
- ノイズ測定のデータを線形化するには、まず、関数 - rgb2linを使用して sRGB テスト チャート イメージのガンマ補正を元に戻します。
参照
[1] Imatest. "Esfr". https://www.imatest.com/mathworks/esfr/.
バージョン履歴
R2017b で導入追加のタイプのテスト チャートの ROI におけるノイズを測定できるようになりました。
- テスト チャートのグレースケール イメージ。 
- Imatest eSFR テスト チャートの強調版または拡張版以外のテスト チャート。 
追加のタイプのテスト チャートのノイズを測定するには、テスト チャート イメージ im、および ROI の位置 roiPositions を指定します。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)