OpenCV打开图片并获取图片信息

本文使用python语言实现,话不多说,直接上代码

import cv2 as cv


def get_image_info(image):
    print(type(image))  # <class 'numpy.ndarray'> image的类型
    print(image.shape)  # (496, 751, 3) 形状:高496,宽751,3通道
    print(image.size)   # 1117488 496x751x3
    print(image.dtype)  # uint8 3通道每个通道像素点8位
    pixel_data = np.array(image)
    print(pixel_data)   # 打印3通道数据


src = cv.imread("C:/Users/admin/Desktop/14.png")    # 打开一张图片
cv.namedWindow("input image", cv.WINDOW_AUTOSIZE)   # 设置图片尺寸,自动
cv.imshow("input image", src)                       # 显示图像
get_image_info(src)                                 # 自定义函数,获取图像信息
gray = cv.cvtColor(src, cv.COLOR_BGR2GRAY)          # 获取一张灰度图像
cv.imwrite("D:/result.png", gray)                   # 将灰度图像保存到D盘,取名result.png
cv.waitKey(0)
cv.destroyAllWindows()

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
要在Visual Studio 2022中使用MFC和OpenCV打开图片,你需要按照以下步骤进行操作: 1. 首先,确保你已经在Visual Studio 2022中安装了MFC和OpenCV库。你可以从官方网站下载并安装它们。 2. 在你的项目中创建一个新的MFC应用程序,并选择对话框作为应用程序类型。 3. 在对话框上添加一个按钮控件,并给它一个适当的标识符。 4. 双击按钮,调用按钮的点击事件处理程序。 5. 在事件处理程序中,添加代码以打开图片。你可以使用OpenCV的cv::imread函数来加载图片。例如,你可以使用以下代码: ```cpp CString strImagePath; // 图片路径 CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, _T("Image Files (*.bmp; *.jpg; *.png)|*.bmp;*.jpg;*.png||")); // 打开文件对话框 if (dlg.DoModal() == IDOK) { strImagePath = dlg.GetPathName(); // 获取选择的图片路径 // 使用OpenCV加载图片 cv::Mat image = cv::imread(CT2CA(strImagePath)); if (!image.empty()) { // 将图片显示在对话框上的图片控件中 CImage img; img.Attach(image.data, image.cols, image.rows, image.step, image.elemSize()); CRect rect; GetDlgItem(IDC_STATIC_IMAGE)->GetClientRect(rect); img.Draw(GetDlgItem(IDC_STATIC_IMAGE)->GetDC(), rect); } } ``` 上述代码中,我们首先打开一个文件对话框以选择要加载的图片。然后,使用OpenCV的cv::imread函数加载选择的图片。如果成功加载了图片,我们将其显示在对话框上的一个图片控件中。 6. 运行程序,点击按钮选择要打开图片。选择的图片将在对话框中显示出来。 通过以上步骤,你可以在Visual Studio 2022中使用MFC和OpenCV打开图片。记得在代码中添加适当的错误处理机制,以确保图片能够成功加载和显示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瑟寒凌风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值