资源描述
2026上半年计算机视觉工程师(OpenCV工具链)实战指南
(考试时间:90分钟 满分100分)
班级______ 姓名______
第I卷(选择题,共40分)
(总共8题,每题5分,每题只有一个正确答案,请将正确答案填在括号内)
w1. 以下关于OpenCV中图像读取函数imread的说法,正确的是( )
A. 只能读取彩色图像
B. 读取的图像默认是灰度模式
C. 第一个参数指定图像文件名,第二个参数可指定读取模式
D. 读取失败时返回空指针
w2. 在OpenCV中,用于图像滤波的函数是( )
A. cv2.threshold
B. cv2.medianBlur
C. cv2.Canny
D. cv2.warpAffine
w3. 若要对图像进行直方图均衡化,应使用的函数是( )
A. cv2.equalizeHist
B. cv2.normalize
C. cv2.resize
D. cv2.rotate
w4. 以下哪种颜色空间转换在OpenCV中可以实现( )
A. RGB到HSV
B. HSV到LAB
C. YUV到CMYK
D. 以上都可以
w5. OpenCV中用于形态学操作的结构元素创建函数是( )
A. cv2.getStructuringElement
B. cv2.createMorphologyEx
C. cv2.morphologyEx
D. cv2.erode
w6. 关于OpenCV中的轮廓检测,下列说法错误的是( )
A. cv2.findContours函数可用于查找轮廓
B. 轮廓检测结果是一个包含所有轮廓的列表
C. 轮廓的层次结构信息是可选返回的
D. 轮廓检测只能针对二值图像进行
w7. 要在图像中绘制一个圆形,使用的函数是( )
A. cv2.rectangle
B. cv2.circle
C. cv2.putText
D. cv2.line
w8. 以下哪个函数可用于图像的几何变换,如缩放、旋转等( )
A. cv2.filter2D
B. cv2.warpPerspective
C. cv2.Sobel
D. cv2.Laplacian
第II卷(非选择题,共60分)
w9. (10分)简述OpenCV中图像阈值处理的几种常见类型及其应用场景。
w10. (15分)写出使用OpenCV进行图像边缘检测的步骤,并说明常用边缘检测算法(如Canny)的原理。
材料:有一幅彩色图像,需要将其转换为灰度图像并进行模糊处理。
w11. (15分)根据上述材料,编写Python代码实现该操作。
材料:现有一个包含多个物体的图像,需要识别其中某个特定物体的轮廓。
w12. (20分)请说明如何使用OpenCV完成该轮廓识别任务,包括使用的主要函数和大致流程。
答案:
w1. C
w2. B
w3. A
w4. A
w5. A
w6. D
w7. B
w8. B
w9. 常见类型:全局阈值、自适应阈值。全局阈值适用于图像整体灰度分布较为均匀的情况;自适应阈值则用于灰度分布不均匀的图像,能根据图像不同区域的灰度特征自动调整阈值。应用场景:全局阈值可用于简单的图像分割等;自适应阈值常用于文字识别、图像预处理等,以更好地适应图像的局部特征。
w10. 步骤:先读取图像,再转换为灰度图像,然后选择合适的边缘检测算法进行处理。Canny算法原理:通过高斯滤波去除噪声,计算图像梯度,利用非极大值抑制细化边缘,最后通过双阈值筛选确定最终边缘。
w11. ```python
import cv2
img = cv2.imread('your_image.jpg')
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
blurred = cv2.GaussianBlur(gray, (5, 5), 0)
cv2.imshow('Blurred Gray Image', blurred)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
w12. 首先读取图像并转换为灰度图像,然后使用cv2.findContours函数查找轮廓,通过轮廓的层次结构信息筛选出特定物体的轮廓。大致流程为:读取图像、灰度化、阈值处理(可选)、查找轮廓、根据轮廓特征筛选特定物体轮廓。可利用轮廓的面积、周长等特征来判断是否为目标物体轮廓。
展开阅读全文