2024年5月30日发(作者:)
OpenCV计算机视觉基础教程试题及答案
一、单项选择题(本大题共20小题,每小题1分,共20分)
1、OpenCV创建于( )年。
A、1997 B、1998 C、1999 D、2000
2、OpenCV提供图像文件读写的模块是( )
A、core B、imgcodecs C、imgproc D、highgui
3、OpenCV使用( )语言实现。
A、Java B、C/C++ C、Python D、JavaScript
4、NumPy中可用于表示无符号整数的数据类型是( )。
A、int8 B、uint16 C、intp D、float
5、NumPy中可用于创建单位矩阵的函数是( )
A、array() B、zeros() C、arange() D、ones()
6、OpenCV用于将图像写入文件的函数是( )
A、imread() B、imshow() C、imwrite() D、VideoCapture()
7、OpenCV用于绘制椭圆的函数是( )
A、line() B、circle() C、ellipse() D、polylines()
8、OpenCV用于对图像执行透视变换的函数是( )
A、flip() B、resize() C、warpAffine() D、warpPerspective()
9、OpenCV用于实现截断阈值处理的参数是( )
A、THRESH_BINARY
C、THRESH_TRUNC
B、THRESH_BINARY_INV
D、THRESH_TOZERO
10、下列关于轮廓查找的说法错误的是( )
A、findContours()函数只能从二值图像中查找图像轮廓。
B、findContours()函数返回一个list对象。
C、findContours()函数返回图像中的所有轮廓。
D、父级轮廓和子级轮廓之间是嵌套关系。
11、下列选项中,可返回轮廓长度的函数是( )
A、arcLength() B、contourArea() C、approxPolyDP() D、convexHull()
12、下列选项中,适用于检测图像中的直线的函数是( )
A、Laplacian() B、Sobel() C、Canny() D、HoughLines()
13、下列选项中,可返回2维直方图的函数是( )
A、hist() B、calcHist() C、createCLAHE() D、equalizeHist()
14、使用分水岭算法分割图像时,不会执行的操作是( )
A、将原图像转换为灰度图像。
C、确定未知区域。
B、确定图像前景
D、从图像中删除背景
15、使用Shi-Tomasi角检测器执行角检测的函数是( )
A、cornerHarris() B、cornerSubPix() C、goodFeaturesToTrack()
findHomography()
16、调用drawMatches()函数绘制关键点时,如果不绘制单个关键点,应使用的参数是( )
A、DrawMatchesFlags_DEFAULT B、DrawMatchesFlags_DRAW_OVER_OUTIMG
、
D、
C、DrawMatchesFlags_DRAW_RICH_KEYPOINTS D
DrawMatchesFlags_NOT_DRAW_SINGLE_POINTS
17、执行a=(12)后,下列选项中不能正确执行的( )
A、=(3,-1)
C、 ((3,4))
B、e((2,3))
D、((3,5),refcheck=False)
18、在OpenCV的绘图函数中,可用于设置绘制填充图形的参数是( )
A、color B、thickness C、lineType D、shift
19、下列选项中关于鼠标回调函数的说法错误的是( )
A、回调函数名称由用户定义。
B、回调函数可获得发生事件时的鼠标位置坐标。
C、可向回调函数传递自定义数据。
D、回调函数不能检测是否Alt、Ctrl、Shift等按键行为。
20、在滤波时会考虑距离和色差信息的是( )
A、medianBlur()
B、bilateralFilter() C、boxFilter() D、.blur()
得 分
评卷人
复查人
二、名词解释(本大题共5小题,每小题4分,共20分)
1、色彩空间
2、透视变换
3、均值滤波
4、反二值化阈值处理
5、腐蚀
得 分
评卷人
复查人
三、简单题(本大题共4小题,每小题5分,共20分)
1、请问OpenCV的主要功能有哪些?
2、请问如何执行图像加法运算?
3、请问使用OpenCV的ml模块中的kNN算法包含哪些步骤?
4、请问EigenFaces人脸识别包含哪些步骤?
得 分
评卷人
复查人
四、程序填空题(本大题共4个空,每空5分,共20分)
1、下面的命令创建一个数组,在改变其形状后输出,在划线处填
入适当的代码,将程序补充完整。
>>> a=(8)
>>> a
#创建数组
#输出数组
array([ 0, 1, 2, 3, 4, 5, 6, 7])
>>> =___________
>>> a
#更改数组形状
#输出数组
array([[ 0, 1, 2, 3,],
[ 4, 5, 6, 7]])
2、下面的程序在指定窗口中显示图像,在划线处填入适当的代码,将程序补充完整。
import cv2
img=('')
____________________________
#读取图像
#创建窗口
#在窗口中显示图像 ('imgw',img)
y(0)
3、下面的程序在窗口一半高度位置画水平白色直线,在划线处填入适当的代码,将程序补
充完整。
import numpy as np
import cv2
img=((200,320,3), 8) #创建一幅黑色图像
#在窗口一半高度位置画水平白___________________________________________
色直线
('draw',img)
y(0)
#显示图像
4、下面的代码执行Canny边缘检测,阈值1设置为150,阈值2设置为240,在划线处填入
适当的代码,将程序补充完整。


发布评论