百度2017年计算机视觉笔试题

来源:互联网 发布:java小球下落 编辑:程序博客网 时间:2024/06/14 00:57

今年百度计算机视觉笔试题分布情况如下:
第一部分:30个选择题,每个2分
第二部分:2个简答题,一个20分,一个30分
第三部分:2个编程题,每个20分

第一部分(有些题目不记得了)

  • 关于C++this指针说法正确的是: A,B,D
    A. this在成员函数的开始前构造,在成员函数的结束后清除
    B. this作用域仅限于类的内部
    C. this指针只存放在栈上
    D. 全局函数、静态函数都不能使用this

解析:
首先this指针的作用:
编译器在识别类时,要经历三个过程:
1.识别类名;
2.识别类中的成员变量;
3.识别函数并对函数进行改写(默认的为函数加上指针this)
在类中调用函数就是要通过this指针来保存这个类的地址,然后根据this指针提供的地址来对类成员变量进行操作。

this指针的特点;
this指针的类型是对应类类型*const this
this指针为类成员函数的第一个默认隐式参数,编写者不能明确的传递
this指针并不是类成员变量,所以不影响类的大小
this指针的作用域仅限于类的内部
this只能在成员函数中使用(全局函数,静态函数都不能使用this)
this 在成员函数的开始前构造,在成员函数结束后清除
this指针会因编译器不同而有不同的放置位置,可能是栈,可能是寄存器,甚至可能是全局变量。

  • 下列关于模式识别的说法正确的是: A,B,C,D
    A. 从处理问题的性质和解决问题的方法等角度考虑,模式识别可分为监督分类和无监督的分类
    B. 决策理论方法引入鉴别函数,通过比较函数值进行分类
    C.statistic pattern recognition的基本原理是“物以类聚”
    D. 模式识别方法的选择取决于问题本身的性质

解析:
对于A. 模式识别又常称为模式分类,从处理问题的性质和解决问题的方法等角度,模式识别分为有监督的分类和无监督的分类两种,二者的主要差别在于,各实验样本所属的类别是否预先已知
对于B .模式识别中的决策理论方法又称为统计方法,决策理论的一般步骤:数字预处理,特征抽取,分类。为了分类,引入了鉴别函数,通过比较函数值进行分类。
对于C. 统计模式识别的基本原理是:有相似性的样本在模式空间中互相接近,并形成“集团”,即“物以类聚”。
对于D. 肯定是对的啦

  • 页式存储管理下,把由4个页面构成的作业根据页表调入由8个物理块构成的存储器中,设定块长为1024B,则以下推断正确的是:A,B,C
    A. 若访问的逻辑地址为(3,1010),物理地址为3058B,则页表中3号页对应2号块
    B. 若访问的逻辑地址为(0,100),物理地址为3172B,则页表中0号页对应3号块
    C.若访问的逻辑地址为(2,785),物理地址为6929B,则页表中2号对应6号块
    D.若访问的逻辑地址为(4,21),物理地址为3172B,则页表中0号页对应3号块

考的操作系统存储的知识,看见题就吓了一跳,本来很简单的题,就是概念记不清了。。。
解析:
首先回顾一下页式存储的概念:
页式存储将程序的逻辑地址空间划分为固定大小的页(逻辑页),而物理内存划分为同样大小的页框(物理页)。【引入页式存储的优点:离散存储可以避免内存紧缩,减少碎片】
逻辑地址的组成:
逻辑地址由两部分组成,页号和页内地址(位移),其中逻辑页从0开始编号,每个页内地址也从0开始编址。
这里写图片描述

若给定逻辑地址A, 页面的大小为L, 则页号p和页内地址w(也称位移量)可以按照如下方式求得:
p=int [A/L]
w=A mod L

页式存储是根据进程页表来实现的,系统为每个进程建立一张页表,用于记录逻辑页与块之间的对应关系。地址空间里有多少页,该页表里就登记多少行,按照逻辑页的编号顺序排列:
这里写图片描述

地址映射过程:
页式存储管理采用动态重定位,在程序的执行过程中完成地址转换,处理器每执行一条指令,就将指令中的逻辑地址(p,w),取来从中得到逻辑页号(p),硬件机构按此页号查页表,得到内存的块号(B),便形成绝对地址(物理地址)(B,w),处理器即按此地址访问主页。
物理地址的计算公式:
物理地址=块的大小(即页的大小L)*块号B+页内地址w

知道上面的知识之后这个题就不难了:
首先对于A: 知道逻辑地址(3,1010)即,p=3,w=1010, 物理地址为:3058=1024*B+1010,计算得B=2, 也就是页表中的3号页对应2号块
对于B:知道逻辑地址(0,100),即p=0,w=100,物理地址为:3172=1024*B+100,计算得B=3,也就是页表中的0号页对应3号块
对于C:知道逻辑地址(2,785),即p=2,w=785,物理地址为:6929=1024*B+785,计算得B=6,也就是页表中的2号页对应6号块
对于D:知道逻辑地址(4,21),即p=4,w=21, 物理地址为:3172=1024*B+21,计算得B=3, 应该是页表中的4号页对应3号块

  • 给你2G的数据2G的内存,下面哪种算法可能导致内存溢出:A
    A. 归并排序————空间复杂度O(n)
    B. 冒泡排序————空间复杂度O(1)
    C. 选择排序————空间复杂度O(1)
    D. 堆排序————–空间复杂度O(1)

  • 利用分支限界法可以解决下列哪些问题:A,B,C,D
    A. 电路板排列问题
    B. 批处理作业调度问题
    C. 装载问题
    D. 最大团问题

分支限界法一般用来求解整数线性规划问题,具体四个问题另写一篇展开讲

  • 下列关于图像边缘检测所用到的算子说法错误的是(B)
    A. Sobel算子是把各个方向上的灰度值加权之和作为输出
    B. Robinson算子是一个边缘模板算子,由八个方向的样板组成,225度角模板为{2,1,0;1,2,-1;0,-1,-2}
    C. Kirsch算子是一个边缘模板算子,由八个方向的样板组成,255度角模板为{-3,-3,-3;5,0,-3,;5,5,-3}
    D. Prewitt算子是一个边缘模板算子,由八个方向的样板组成,255度角模板为
    {-1,-1,1;-1,-2,1;1,1,1}

解析:
这个题就有点过分了,平时只注意用了,用到的时候再查,完全没有去记具体的值,又是一懵
迄今为止,已经出现了许多成熟的边缘检测算法,例如微分算法、掩膜算法。在微分算法中通常使用N*N的像素块来进行近似求导。这里3×3 的像素块分布如下:

f(i1,j1)f(i,j1)f(i+1,j1)f(i1,j)f(i,j)f(i+1,j)f(i1,j+1)f(i,j+1)f(i+1,j+1)

如果设f(i,j) 待处理的像素,而g(i,j) 为处理后的像素那么:

  • Roberts算子

    gx=1001×f(x,y)

    gy=0110×f(x,y)g(x,y)=sqrt((f(i,j)f(i+1,j+1))2+(f(i,j+1)f(i+1,j))2)g(x,y)=|f(i,j)f(i+1,j+1)|+|f(i,j+1)f(i+1,j)|

  • Sobel算子(又称加权平均差分法)

    gx=121000121×f(x,y)

    gy=101202101×f(x,y)g(x,y)=g2x+g2y,g(x,y)=|gx|+gy

    Sobel算子对数字图像的每一个像素f(i,j),考察它的上、下、左、右邻域灰度的加权值,把各个方向上0度,45度,90度,135度的灰度加权之和作为输出,可以达到提取图像边缘的效果。

  • Laplace算子 他是一种二阶微分算子。有两种形式:4阶邻域微分算子和8阶邻域微分算子

  • 4阶微分算子

    g(x,y)=010141010×f(x,y)

  • 8阶微分算子

    g(x,y)=111181111×f(x,y)

  • Prewitt算子
    prewitt算子是一个边缘模板算子,由八个方向的样板组成,能够在0度,45度,90度,135度,180度,225度等8个方向检测边缘。8个3*3边缘模板以及方向如下:
    -90度角

    g(x,y)=111121111×f(x,y)

    -45度角

    g(x,y)=111121111×f(x,y)

    -0度角

    g(x,y)=111121111×f(x,y)

    -135度角

    g(x,y)=111121111×f(x,y)

    -180度角

    g(x,y)=111121111×f(x,y)

    -225度角

    g(x,y)=111121111×f(x,y)

  • Robinson算子
    Robinson算子是一个边缘模板算子,由八个方向的样板组成,能够在0度,45度,90度,135度,180度,225度等8个方向检测边缘。8个3*3边缘模板以及方向如下:
    -90度角

    g(x,y)=101202101×f(x,y)

    -45度角

    g(x,y)=012101211×f(x,y)

    -0度角

    g(x,y)=121000121×f(x,y)

    -135度角

    g(x,y)=210101012×f(x,y)

    -180度角

    g(x,y)=121000121×f(x,y)

    -225度角

    g(x,y)=012101210×f(x,y)

  • Kirsch算子
    Kirsch算子是一个边缘模板算子,由八个方向的样板组成,能够在0度,45度,90度,135度,180度,225度等8个方向检测边缘。8个3*3边缘模板以及方向如下:
    -90度角

    g(x,y)=533503533×f(x,y)

    -45度角

    g(x,y)=333503553×f(x,y)

    -0度角

    g(x,y)=333303555×f(x,y)

    -135度角

    g(x,y)=553503333×f(x,y)

    -180度角

    g(x,y)=555303333×f(x,y)

    -225度角

    g(x,y)=355305333×f(x,y)

原创粉丝点击