#region 鼠标响应
static void Main(string[] args)
{
Mat src = Cv2.ImRead("lenna.png", ImreadModes.AnyColor);
Cv2.ImShow("src image", src);
int key;
bool Esc = false;
Cv2.NamedWindow("output image", WindowFlags.AutoSize);
Mat output_image = new Mat(src.Size(),src.Type());
while (true)
{
key = Cv2.WaitKey(10);
switch (key)
{
case 27:
Esc = true;
break;
case 49:
Cv2.CvtColor(src, output_image, ColorConversionCodes.BGR2GRAY);//色彩空间转换
break;
case 50:
Cv2.CvtColor(src, output_image, ColorConversionCodes.BGR2HSV);//色彩空间转换
break;
case 51:
output_image = src + new Scalar(50, 50, 50);//增加亮度
break;
}
Cv2.ImShow("output image", output_image);
if (Esc) break;//跳出while循环
}
Cv2.DestroyAllWindows();
}
#endregion
按1的效果:
按2的效果:
按3的效果: