图像算法工程师三重境界 :
一、传统图像算法工程师:
主要涉及图形处理,包括形态学、图像质量、相机成像之3A算法、去雾处理、颜色空间转换、滤镜等,主要在安防公司或者机器视觉领域,包括缺陷检测;二、现代图像算法工程师:
涉及模式识别,主要表现的经验为Adaboost、SVM的研究与应用,特征选取与提取,包括智能驾驶的研究与应用、行人检测、人脸识别;三、人工智能时代图像算法工程师:
深度学习,主要在大型互联网公司或者研究所机构,具体体现在TensorFlow等开源库的研究与应用,包括机器人的研究、基于深度学习的人脸识别;
首先!!!算法工程师包括:
-
音/视频算法工程师(通常统称为语音/视频/图形开发工程师)
-
图像处理算法工程师
-
计算机视觉算法工程师
-
通信基带算法工程师
-
信号算法工程师
-
射频/通信算法工程师
-
自然语言算法工程师
-
数据挖掘算法工程师
-
搜索算法工程师
-
控制算法工程师(云台算法工程师,飞控算法工程师,机器人控制算法)
-
导航算法工程师
-
其他【其他一切需要复杂算法的行业】
图像处理算法工程师
相关术语:
(1) OCR:OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗、亮的模式确定其形状,然后用字符识别方法将形状翻译成计算机文字的过程
(2) Matlab:商业数学软件;
(3) CUDA: (Compute Unified Device Architecture),是显卡厂商NVIDIA推出的运算平台(由ISA和GPU构成)。 CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题
(4) OpenCL: OpenCL是一个为异构平台编写程序的框架,此异构平台可由CPU,GPU或其他类型的处理器组成。
(5) OpenCV:开源计算机视觉库;OpenGL:开源图形库;Caffe:是一个清晰,可读性高,快速的深度学习框架。
(6) CNN:(深度学习)卷积神经网络(Convolutional Neural Network)CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。
(7) 开源库:指的是计算机行业中对所有人开发的代码库,所有人均可以使用并改进代码算法。
1必备技能总结
职位要求
编程技能:
1、 具有较强的编程能力和良好的编程习惯, 精通c/c++编程,并熟练使用VS 或matlab开发环境;
2、 在计算机技术领域拥有扎实的技术功底,尤其在数据结构、算法和代码、软件设计方面功力深厚;
对数据结构有一定的研究基础如链表、堆杖、树等,熟悉数据库编程;
3、 出色的算法分析能力,对某一特定算法可以做广泛的综述,有实际算法实现经验;
4、 熟悉面向对象编程思想,精于windows下的C/C++、VC++程序设计,熟悉MATLAB,对MFC有相对的了解和应用经验;
专业技能:
1、扎实的数学功底和分析技能,精通计算机视觉中的数学方法;
高等数学(微积分)、线性代数(矩阵论)、随机过程、概率论、
摄影几何、模型估计、数理统计、张量代数、数据挖掘、数值分析等;
2、具备模式识别、图像处理、机器视觉、信号处理和人工智能等基础知识;
对图像特征、机器学习有深刻认识与理解;
3、精通图像处理基本概念和常用算法包括图像预处理算法和高级处理算法;
常见的图像处理算法,包括增强、分割、复原、形态学处理等;
熟悉常见的模式识别算法,特别是基于图像的模式识别算法,掌握特征提取、特征统计和分类器设计;
4、熟练使用OpenCV、Matlab、Halcon中的一种或一种以上工具库;
5、熟悉机器视觉系统的硬体选型,包括CCD相机,镜头及光源;熟悉相机与镜头搭配;
外语:
1. 英文熟练,能够熟练阅读和理解专业英文资料,有英文文献检索和阅读能力;
2. 良好的英语沟通能力
综合能力:
1.对工作认真负责,积极主动,勤奋踏实;
2.做事严谨,注重细节,有耐心,能够在压力下独立工作;
3.学习钻研能力强,有较强的理解能力和逻辑思维能力和良好的创新意识;
4.良好的协调沟通能力和团队合作精神;
视觉算法经验:请提供实现的算法列表
目标识别、图像配准、三维测量、标定和重建、手势识别;
表面缺陷检测;尺寸测量;特征识别;
图像去噪、滤波、融合算法
3A算法:如自动曝光、自动对焦、自动白平衡
岗位职责:
1、负责计算机视觉中的图像采集,处理面阵和线扫描相机的成像和控制 ;
2、针对特定的计算机视觉问题,设计目标识别与快速定位与检测算法的实现,并进行优化;
3、对彩色图像和灰度图像实现物体表面的污点划痕检测算法设计和实现;
4、处理三维物体表面数据获取和实现三维测量算法的实现;
5、处理点激光和线激光源的成像,散斑噪声滤波和轮廓检测;
6、负责算法与软件GUI开发工程师接口;
7、完成上级领导交办的其他的工作。
2面试题大全
1-图像基础知识:
1.常用的图像空间。
2.简述你熟悉的聚类算法并说明其优缺点。
3.请描述以下任一概念:SIFT/SURF LDA/PCA
4.请说出使用过的分类器和实现原理。
5. Random Forest的随机性表现在哪里。
6. Graph-cut的基本原理和应用。
7. GMM的基本原理和应用。
8.用具体算法举例说明监督学习和非监督学习的区别。
2-笔试
大概有:
1.表示图像的特征有哪些?
纹理,频率,梯度这种
2.写出canny边缘提取算法的原理
3.图像插值方法
4.自己设计一个OCR引擎
5.写出Kmeans程序,并在一个设计环境中怎样使用
6.中值滤波
7.static的作用
8.写一个c++宏
9.二分查找
整数翻转,如何处理越界问题
C++多态,静态联编和动态联编,虚函数表
模型融合如何做
提升树的思想,随机森林和提升树的区别
SVM推导,对偶性的作用,核函数有哪些,有什么区别
python两个每行都是数字的文件合并,去重。
shell编程,编辑文件。
进程与线程的区别
卷积神经网络介绍
SVM的推导
大文件求交集,如何解决哈希之后小文件还是放不进内存
堆排序代码
连续和最大问题,如何证明?
bp算法介绍,梯度弥散问题。
svm介绍,优缺点是什么,lr介绍,区别是什么
lr与线性回归的区别
如果要预测房价,用什么模型
如果要预测房价,并且知道一个房间的房型信息,如何构建模型
sigmoid 函数的应用有哪些,为什么?
列举十种常用的神经网络模型
语音识别模型有哪些
如何识别一个人在喝酒,需要几个模型
卷积神经网络中卷积如何实现,激活函数的意义,损失函数有哪些,初始化参数如何选择
用过哪些深度学习框架,TensorFlow中的session是什么,session和interactivesession的区别
如何实现卷积层权值共享
如何保存模型,读取已有的模型
用过哪些深度学习模型,区别是什么。
了解哪些寻优算法
softmax损失函数作用是
c++ 的 const,static作用
强制类型转换cast之间的区别
svm推导,核函数的体现,常用的核函数有哪些
alexnet介绍
过拟合的原因,有哪些避免过拟合的trick
1G的文本统计词频,输出频率最高的1000个词
手写topk的代码,快排。代码还能如何优化,如果要上线的话还需要做哪些处理
如果分类样本的标签只有一定的概率可信,如何处理
如何设置负样本
过拟合的原因,有哪些防止过拟合的方法
模型评价如何做,其中存在哪些问题
决策树算法有哪些,随机森林和GBDT的区别
降维方法,PCA原理
哈夫曼树在机器学习中的应用
文本挖掘算法了解哪些
人流量预测系统如何设计
profession笔试:最优的进程调度算法,至少用多少个cpu
英语自我介绍,口语渣猝不及防
联想研究院 模式识别研究员 offer
异常值的影响,如何消除
所有了解的机器学习算法有哪些,框架性讲述
梯度下降算法了解哪些,优劣势是什么
二叉树中序遍历,递归和非递归
linux操作指令了解哪些,文本处理指令有哪些
一亿个数的文件,如何分成两个文件a,b,使得a文件的数都小于b,同时文件大小要差不多。
均匀分布如何生成正态分布
SVM原理,支撑向量越多越好还是越少越好
二叉树深度遍历,时间复杂度和空间复杂度
二维排序矩阵搜索
项目中的长时间推广问题,如何考虑样本之间非独立的影响。
编程题,矩阵中的最短路,有门有钥匙。动态规划加状态向量。
贝叶斯公式,实际如何计算,如何解决精度问题。
字符串转数字
svm核函数有哪些,如何选取,手写表达式
降维方法介绍
c的虚函数,虚函数指针和虚函数表存在哪儿
YOLO V2 V3 V4 你对哪个熟悉,讲一下细节实现
多尺度问题
anchor基础知识
人脸识别现在常用算法
语义分割到实例分割怎么做
GAN是否了解,如何通俗的讲其原理
PCA原理LDA原理
SVM+HOG
XGBoost
CNN、RCNN、FRCNN,有可能问你其中一个细节的关键
TensorFlow这些框架你谈一下看法以及对其他框架的了解
现在机器学习、深度学习这么火,你有什么看法
机器学习、深度学习你对他们的理解是什么
做门牌或者车牌识别的步骤以及关键
Relu比Sigmoid使用多的原因
Loss不升反降的原因,如何解决
SSD细节
Linux 权限的意义
块操作的操作的步骤以及快捷方式
rm -rf *这句话是什么意思
Linux 文件权限修改,参数介绍
模型的比较如何做
随机森林和提升树
卷积神经网络原理
如何避免网络的过拟合
如何网络调优
Python 的数据结构有哪些
tuple 和set的区别,set的底层实现
hash表的算法有哪些
svm推导,一直到序列最小化求解。核函数如何体现,有哪些类型。
构建分类器的整个流程是什么
数据清洗方法,缺失值处理方法,降维方法
pca原理推导
决策树算法的介绍
二维排序数组搜索
如何构建欺诈交易识别的模型?
不均衡的数据如何分类
归并排序,二维排序数组搜索,中序遍历重构二叉树
svm推导,为什么要用拉格朗日乘数法,对偶问题是什么
KKT条件都有什么,如何求解svm的最优化问题
数据不均衡如何解决,抽样得到的分类准确率如何转换为原准确率。
逻辑回归原理,推导求解方法。
为什么选用对数极大似然函数作为优化目标,用平方损失有什么问题。
逻辑回归对特征有什么要求,是否需要做离散化,离散化的好处与坏处。
【C++的问题】:
vector、list、map有什么区别
引用和指针
多态问题,继承,构造析构
C++ 11举例子几个新的特性,以及你用过的
虚函数
内存分配(堆和栈的区别讲解)
Python问题lambda函数讲一下、类型转换如何操作
…………
……
转载:https://blog.csdn.net/weixin_42346564/article/details/83894235