opencv 筆記17 Imgproc_Lapacian

#include "opencv2/imgproc/imgproc.hpp"
#include "opencv2/highgui/highgui.hpp"
#include <stdlib.h>
#include <stdio.h>

using namespace cv;

/** @函數 main */
int main( int argc, char** argv )
{
  Mat src, src_gray, dst;
  int kernel_size = 3;
  int scale = 1;
  int delta = 0;
  int ddepth = CV_16S;
  char* window_name = "Laplace Demo";

  int c;

  /// 裝載圖像
  src = imread( argv[1] );

  if( !src.data )
    { return -1; }

  /// 使用高斯濾波消除噪聲
  GaussianBlur( src, src, Size(3,3), 0, 0, BORDER_DEFAULT );

  /// 轉換爲灰度圖
  cvtColor( src, src_gray, CV_RGB2GRAY );

  /// 創建顯示窗口
  namedWindow( window_name, CV_WINDOW_AUTOSIZE );

  /// 使用Laplace函數
  Mat abs_dst;

  Laplacian( src_gray, dst, ddepth, kernel_size, scale, delta, BORDER_DEFAULT );
  convertScaleAbs( dst, abs_dst );

  /// 顯示結果
  imshow( window_name, abs_dst );

  waitKey(0);

  return 0;
  }

void Laplacian(const Mat& srcMat& dst, int ddepth, int ksize=1, double scale=1, double delta=0, int borderType=BORDER_DEFAULT)

Calculates the Laplacian of an image

Parameters:     
  • src – Source image
  • dst – Destination image; will have the same size and the same number of channels as src
  • ddepth – The desired depth of the destination image
  • ksize – The aperture size used to compute the second-derivative filters, see getDerivKernels() . It must be positive and odd
  • scale – The optional scale factor for the computed Laplacian values (by default, no scaling is applied, see getDerivKernels() )
  • delta – The optional delta value, added to the results prior to storing them in dst
  • borderType – The pixel extrapolation method, see borderInterpolate()



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章