opencv怎么把图片处理成32,32,3

opencv怎么把图片处理成32,32,3,第1张

你可以使用OpenCV的resize函数图片大小调整为32x32,同时将通道数设置为3。示例代码如下:

```python

import cv2

# 读入原始图片

img = cv2.imread('your_image_file_path')

# 将图片调整为32x32大小,通道数为3

img_resized = cv2.resize(img, (32, 32), interpolation=cv2.INTER_AREA)

img_resized = cv2.cvtColor(img_resized, cv2.COLOR_BGR2RGB)

# 显示调整后的图片

cv2.imshow('resized image', img_resized)

cv2.waitKey(0)

cv2.destroyAllWindows()

```

在上述代码中,我们首先使用cv2.imread函数读入原始的图片,并将其存储在变量img中。然后,我们使用cv2.resize函数将图片调整为指定的大小(32x32),并将插值方式设置为INTER_AREA,这是一种适用于缩小图片的插值方式。最后,我们使用cv2.cvtColor函数将BGR格式的图像转换为RGB格式,以便进行显示。

#include "cv.h"

#include "highgui.h"

#include "stdio.h"

int main(int argc,char *argv[])

{

IplImage *image=0,*imageresize=0

image=cvLoadImage("lena.jpg",1)

if(!image) printf("can't load an image\n")

imageresize=cvCreateImage(cvSize(1000,750),IPL_DEPTH_8U,3)

cvResize(image,imageresize,CV_INTER_LINEAR)

cvNamedWindow("lena",1)

cvNamedWindow("size",1)

cvShowImage("size",imageresize)

cvShowImage("lena",image)

cvWaitKey(0)

cvReleaseImage(&image)

cvReleaseImage(&imageresize)

cvDestroyWindow("size")

cvDestroyWindow("lena")

return 0

}

自己把图像文件 lena.jpg 添加到建的项目文件运行就可以了!

opencv里面专门设置分辨率的函数根本不起作用。我也是学习者,后来网上查找了手动更改opencv里面的文件/modules/highgui/src/cap_v4l.cpp 里面的#define DEFAULT_V4L_WIDTH 640再重新编译opencv。调用设置分辨率才行的。我是在linux下的,驱动本来就不好,也一卡卡的。但是如果offline处理的话,可以自己设置帧率。。。我用的是2.4版本的


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/8020825.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存