图像处理职位面试题汇总(6)

基础知识

1.为了提高算法运行速度,可以有哪些方法?(写你了解的、用过的)


2.什么是内存碎片?对系统能有何影响?如何在开发中尽量避免内存碎片


图像处理

1. 圆形靶子,在其上面随机标记一点,求点距圆心距离的概率密度函数和概率分布函数?


2.我们的算法研究主要分为应用算法研究和基础研究,在图像处理、模式识别方向,你觉得用算未予研究可以用到哪些场合?(比如:车辆识别,人脸识别)


3.简述hough变换的原理。请列举一些你认为可以用HOUGHT变换提取的形状,理由是什么?


4.图像特征:了解哪些图像像相关的特征(特征描述,特征算子),并举例用什么地方?


5.摄像机拍摄图像与现实世界是什么 变换?在这种变换中有哪些量不变的?请写出这种变换的代数表达式?


6.Deep Learning 听说过多少,并举出目前哪些领域应用到Deep learning技术?


7.图像增强与图像恢复是否是同一个概念?如果是,请解释什么是图像增强(图像恢复);如果不是,请说明其各自特点和应用领域,以及差异?


综合

如果在一段视频中,找寻穿上身蓝白条纹,下身黑色裤子的人,你能想到哪些方法?并给出大致的处理流程.


================

C/C++基础知识题目

1、 请问sizeof(char),sizeof(short),sizeof(int),sizeof(long*),sizeof(longlong)分别是多少?不同平台时哪些会有变化。


 2、 程序的局部变量存在于(       )中,全局变量存在于(          )中,     

  • 代码存在于(               )中      
  • 常量存与(    )中,
  •  动态申请数据存在于(          ) 

 3、  请指出下面程序的错误

void GetBuffer(char *p){
	p=(char *)malloc(100);
}
void Test(void){
	char *str=NULL;
	GetBuffer(str);
	strcpy(str,"hello world");
	printf(str);
}  
4. 以下代码的输出是
int main()  {
	int a[10]={0, 1, 2, 3, 5, 4, 6, 7, 9, 8};
	int *ptr=(int*)(&a+1);
	printf("%d,%d,%d,%d\n", *(a+1), *(ptr-1), (a+1)[5], sizeof(a) );
}

嵌入式系统开发

1、 相对于PC软件开发,嵌入式软件开发有什么不同?


2、 常见设备接口中,串口、USB、SPI通常需要几根线,分别是什么线。使用时,典型速度是多少?有哪些差异?


3、 嵌入式系统中,驱动是什么?请说明其作用。


4、 嵌入式Linux系统中,有哪些同步机制?这些同步机制的优缺点是什么?

算法优化

1、给一个int型递增数组Data,写一个二分查找函数,并设计对该函数进行单元测试的测试用例。


2、嵌入式软件中,某代码if( sqrt( x*x + y*y ) < R ) { //后续耗时计算 } ,该语句需执行1920*1080次判断,发现其中浮点sqrt比较慢,需要优化:

     a)  x,y,R均为浮点数。怎么使用预先判断的优化方法?

     b)  x,y为BYTE类型数据,R为浮点数,有什么优化方法?


3、某识别比对系统,一次比对产生1百万条比对分值,分值为0~1000的float浮点数,请选出分值最大的前 1万条数据,同分按原顺序从前往后取,取满为止。请写出算法概要流程,要求尽量低的复杂度。


4、情况同上,分值改为整数,取值范围 0~4000,请写出算法概要流程,要求尽量低的复杂度。




关于Image Engineering& Computer Vision更多讨论与交流,敬请关注本博客和新浪微博songzi_tea.

你可能感兴趣的:(图像处理职位面试题汇总(6))