一、求职要求 来自:http://search.51job.com/job/51574357,c.html 职位职能: 软件工程师 | |||||
职位描述: 业务内容: 1. 从事智能家庭监控,设备互联等技术的研究和产品开发 2. 从事LBS/SNS,以及多屏融合业务的研究和产品开发 3. 从事新一代多媒体电子书编辑器/阅读器的开发及标准的研究 所需专业: 计算机科学/软件工程/信息处理/应用数学等相关专业 应聘要求: 1. 相关专业本科生及以上学历 2. 熟悉C/C++/Java或 CSS/XML/JavaScript等编程语言,熟悉UML和软件设计模式 3. 了解E-Pub, web layout engine或者HTTP, REST, web service等相关技术 符合以下条件之一者优先: 1. 熟悉YouTube, Facebook,Twitter等SNS API者优先 2. 有浏览器内核开发经验者或掌握Eclipse插件开发技术者优先 3. 熟悉数据挖掘,机器学习,计算机视觉等相关算法者优先
二、面试要求: 准备内容: 首先会有30分钟编程笔试题 面试交流中,将请您进行5分钟左右英文自我介绍(如:教育背景和重要个人论述、个人强项技术介绍等) 其余时间为面试官提问时间用中文对答,面试时间预计为30分钟左右
三、相关准备 主要针对网上搜到的提到的相关题目就行准备 1. 简单描述堆和栈(《程序员面试宝典》P179) (1)它们是两种不同的数据结构,栈(stack)是由操作系统自动分配/释放,存放本地的参数值、局部变量的值等。堆(heap)是程序员手动分配/释放。 (2)栈是线性结构,空间有限;而堆是线性表,比较灵活,有自由的存储区。C中的malloc分配的空间就在堆上,C++中分 配的空间也在堆上。 (3)程序在编译时堆变量和函数的分配都在栈上进行,且函数运行中函数的调用的参数的传递也在栈上运行。 内存分为以下几个部分:代码区 ,全局区(静态区),堆,栈,文字变量区(字符串区) 2. 非递归实现中序遍历二叉树。(《数据结构--使用C++描述》P88) 递归方法:
|
利用边缘灰度的变化率、方向
(1)
在没有边缘变化的情况下,g(x,y)的值基本为0,但是在边缘处,g(x,y)的值不为0,运用一个2*2的算子就可以检测出边缘部分,很巧妙的算法。
(2)Sobel 一阶导数算子
(3)Prewitt(一阶导数算子)
(4)kirsch(非线性算子)
Kirsch算子是R.Kirsch提出来一种边缘检测新算法,它采用8个模板对图像上的每一个像素点进行卷积求导数,这8个模板代表8个方向,对图像上的8个特定边缘方向作出最大响应,运算中取最大值作为图像的边缘输出
(5)Laplacian 算子(二阶算子)
为了去除噪声,可以使用高斯滤波器进行滤波,相当于低通滤波器。原始图像的边缘就处在拉普拉斯的值等于0的地方
(6)Canny算子(待补充)
四、面试内容
(1)笔试部分
编程题1:输入一个字符串,比如“aa%%bb”,输出其中字母的个数 如a:2;b;2
编程题2:将一个数据转成单链表并排序(降序)。
将一个单链表再排序(升序)。
(2)面试部分:
1.堆和栈的区别(面试时忘了,之前还准备的)
2.C语言中的静态函数解释下。
3.K-means算法(个人项目内容)
4.视频摘要介绍下,关键帧的定义?
5.你还有什么想问我们的?
6.红黑树是什么?
7.知道哪些数据结构?
8.自己独立编过哪些算法?如何实现的?
9.是否用过其他非监督学习算法做视频摘要?
10.人脸识别的时候选用什么特征?为什么?
11. grabcut函数的原理?
12. 感兴趣区域的广告监测的原理介绍下?
13.谈谈对操作系统的了解。
14. 语音识别的原理(腾讯电话面试)
15. 视频检索你如何实现?
16.车牌识别的原理?
17.手写和打印的字你如何分别识别呢?
18.SIFT算法解释?(联想实习面试)
19.你如何设计图片检索系统?原理?(联想实习面试)
20.知道一些图像检索的比赛吗?
21.个人专利中快递单上数字字符识别的原理?
其算法包含两个步骤,字符定位和字符识别。
字符定位即通过用户选定大致区域,进行每个字符的精确定位与分割;而字符识别即对精确分割的每个字符进行识别。
字符定位主要包含:区域定位、预处理以及字符分割三个步骤,当用户选定数字大致区域后,根据聚类算法准确定位号码区域;接下来,对区域进行去噪、自适应二值
化以及形态学处理等预处理操作;最后,实现每个字符的精确分割,将单个字符所在区域用最小外接矩形框进行标示。而字符识别的步骤根据字符的性质不同而不同。
当字符为印刷体的0-9数字时,建立一个包含各种印刷字体和大小的0-9数字的素材库,使用Tesseract-ocr算法进行训练,即可实现印刷体数字的识别。当字符为手写体
的0-9数字时,同样建立一个各种手写字体和大小的0-9数字的素材库,训练时提取统计和结构特征训练SVM分类器;识别时,通过提取同样的特征,再通过训练好的
SVM模型即可实现识别。