Cannyフィルタのサンプルです。
using OpenCvSharp;
using OpenCvSharp.Extensions;
namespace CannySample;
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
// 画像ファイルのパス
var file = @"C:\Users\karet\Pictures\20221119\P_20190914_063523_1.png";
// 画像ファイルの読み込み
var mat = Cv2.ImRead(file);
// グレースケール変換
Cv2.CvtColor(mat, mat, ColorConversionCodes.RGB2GRAY);
// 大津2値化
Cv2.Threshold(mat, mat, 0.0, 255.0, ThresholdTypes.Otsu);
// Cannyフィルタ
Cv2.Canny(mat, mat, 3.0, 3.0);
// ピクチャボックス
var picbox = new PictureBox()
{
SizeMode = PictureBoxSizeMode.AutoSize,
Image = BitmapConverter.ToBitmap(mat),
};
// パネル
var panel = new Panel()
{
Dock = DockStyle.Fill,
AutoScroll = true,
};
// コントロールの追加
panel.Controls.Add(picbox);
Controls.Add(panel);
using(mat) {}
}
}
コメント