1

私は画像処理が初めてで、画像に存在するエッジの強度を計算する必要があります。画像があり、その画像にぼかし効果を追加する状況を想定します。この 2 つの画像のエッジの強さは異なります。両方の画像のエッジ強度を別々に計算する必要があります。

これまでのところ、以下のコードを使用して画像のエッジ検出を取得しました。

  Mat src1;
  src1 = imread("D.PNG", CV_LOAD_IMAGE_COLOR);
  namedWindow("Original image", CV_WINDOW_AUTOSIZE);
  imshow("Original image", src1);
  Mat gray, edge, draw;
  cvtColor(src1, gray, CV_BGR2GRAY);
  Canny(gray, edge, 50, 150, 3);
  edge.convertTo(draw, CV_8U);
  namedWindow("image", CV_WINDOW_AUTOSIZE);
  imshow("image", draw);
  waitKey(0);
  return 0;

このエッジ画像の強度を計算する方法はありますか..?

4

1 に答える 1

0

mean画像の平均値が得られます。上記のように使用Cannyしている場合は、次のことができます。

Scalar pixelMean = mean(draw);

エッジ ピクセルのみの平均を取得するには、画像をマスクとしても使用します。

Scalar edgeMean = mean(draw, draw);

残念ながら、Cannyすべてのエッジ ピクセルを に設定するため255、平均は常に になります255。これが探している測定値である場合は、Sobel(Gaussian Blur の後で) 使用して勾配を計算し、相対的なエッジ強度を取得することをお勧めします。

于 2014-11-21T18:11:21.377 に答える