AI视觉Python工程师职位中的所有专业技术名词,核心编程/框架工具 、视觉AI模型/工具 、模型优化/部署技术 、视觉业务场景技术四大类进行清晰拆解,每个名词均贴合职位实际应用场景:
一、 核心编程/框架工具(工程落地基础)
- Python
- 定义:一种解释型、面向对象的高级编程语言,语法简洁优雅,生态极其丰富。
- 职位核心用途:作为整个视觉AI项目的核心开发语言,用于模型调用、图像处理、API构建、工程化集成等全流程开发。
- TensorFlow/PyTorch
- 定义:两款主流的深度学习框架,提供了从模型定义、训练、微调至推理的完整工具链,封装了底层神经网络计算逻辑。
- 职位核心用途:
- PyTorch:更常用于Stable Diffusion系列模型的微调、自定义修改(如ControlNet、LoRA训练),是视觉生成模型落地的主流框架。
- TensorFlow:可选用于传统视觉任务(如图像分类)的模型构建,部分生产环境中也会用于模型部署。
- OpenCV
- 定义:一个跨平台的计算机视觉开源库,封装了大量图像处理、特征提取、目标检测、视频分析等底层算法。
- 职位核心用途:处理视觉任务中的前置/后置数据(如图像裁剪、降噪、格式转换、视频帧提取)、实现视频换脸/换背景/去字幕的基础图像操作、辅助提升生成模型的输入数据质量。
- PIL/Pillow
- 定义:PIL(Python Imaging Library)是Python经典图像处理库,Pillow是其升级版,专注于简单高效的图像读写、基本编辑和格式转换。
- 职位核心用途:快速处理图像的读写(支持多种格式如JPG、PNG)、尺寸调整、色彩空间转换、简单滤镜处理,作为OpenCV的补充,适配轻量型图像处理场景。
- NumPy
- 定义:Python科学计算核心库,提供了高性能的多维数组(ndarray)和数学运算工具,是所有数据科学、深度学习库的基础依赖。
- 职位核心用途:存储和处理图像/视频的像素数据(图像本质是三维NumPy数组)、实现像素级的数学运算(如归一化、扰动)、衔接图像处理库与深度学习框架的数据格式转换。
- FastAPI
- 定义:一款高性能、现代化的Python Web框架,基于异步编程,支持自动生成API文档,易用性和扩展性极强。
- 职位核心用途:构建视觉AI模型的生产级推理API服务,承接批量图像/视频处理请求,实现低延迟的模型调用接口,是当前AI模型落地的主流API框架。
- Flask
- 定义:一款轻量级、灵活的Python Web微框架,核心简洁,可通过扩展库丰富功能。
- 职位核心用途:快速构建视觉模型的演示版API、小型项目的推理服务,或在已有老旧项目中集成视觉模型接口,兼容性强。
- Linux
- 定义:一款开源的类Unix操作系统,具有稳定性高、安全性强、可定制化程度高的特点,是服务器端、深度学习训练/部署的主流环境。
- 职位核心用途:在Linux服务器上进行模型训练、部署推理API服务、配置环境依赖、排查生产环境问题、编写Shell脚本实现批量任务自动化。
- Git
- 定义:一款分布式版本控制系统,用于跟踪代码的修改历史、管理多人协作开发、分支管理和版本回溯。
- 职位核心用途:管理视觉AI项目的代码仓库,记录模型优化、API开发的迭代历史,协同团队开发,保障代码的可追溯性和安全性。
- Docker
- 定义:一款容器化技术,可将应用程序及其依赖环境打包成标准化的容器,实现"一次构建,到处运行"。
- 职位核心用途:将视觉模型、推理API、依赖库(如PyTorch、OpenCV)打包成Docker容器,简化生产环境的部署流程,解决环境兼容问题,提升服务的可迁移性和可扩展性。
二、 视觉AI模型/工具(核心业务核心)
- Stable Diffusion
- 定义:一款开源的文本到图像(Txt2Img)生成式深度学习模型,基于扩散模型(Diffusion Model)构建,能够根据文本提示词生成高质量图像,支持多种衍生优化。
- 职位核心用途:作为核心视觉生成模型,实现图生图、扩图等业务需求,同时基于其衍生版本进行定制化调优和部署。
- SDXL/SD1.5
- 定义:Stable Diffusion的两个主流版本:
- SD1.5:经典稳定版本,参数量适中,部署成本低,生态成熟(大量预训练LoRA、ControlNet模型),是落地场景的主流选择。
- SDXL:升级版,参数量更大,生成图像分辨率更高、细节更丰富,适合对图像质量要求较高的场景,但训练和推理成本更高。
- 职位核心用途:根据业务需求(质量/成本)选择对应版本,进行批量图像生成、定制化调优,支撑图生图、扩图等核心业务。
- 定义:Stable Diffusion的两个主流版本:
- ControlNet
- 定义:Stable Diffusion的扩展插件/模型,通过引入额外的控制条件(如边缘检测、姿态估计、深度图),约束生成图像的结构和形态,解决原生SD生成结果不可控的问题。
- 职位核心用途:提升视觉生成任务的可控性(如扩图时保持原有图像结构、生成指定姿态的人物图像),优化图生图、视频换脸等业务的生成效果。
- LoRA(Low-Rank Adaptation,低秩适应)
- 定义:(前文已提及,此处侧重视觉场景)参数高效微调技术,冻结Stable Diffusion主模型权重,仅训练少量低秩矩阵,快速让模型学习特定风格/人物/物体的特征。
- 职位核心用途:快速定制化Stable Diffusion模型(如训练特定品牌风格、特定人物形象),支撑个性化图像生成需求,且训练成本低、易于部署。
- ComfyUI
- 定义:一款基于节点式可视化编程的Stable Diffusion前端工具/框架,底层基于Python,将模型推理、图像处理的各个步骤封装为独立节点,支持拖拽式搭建工作流。
- 职位核心用途:
- 可视化调试Stable Diffusion的复杂工作流(如图生图+ControlNet+LoRA的组合使用)。
- 自定义节点开发:扩展其功能(如新增视频处理节点、自定义优化节点),适配业务专属需求(如视频去字幕、批量扩图),是加分项的核心要求。
- Auto1111(Stable Diffusion WebUI by Automatic1111)
- 定义:一款功能丰富、生态成熟的Stable Diffusion网页端工具,提供了简洁的界面和大量内置扩展,易于快速上手使用。
- 职位核心用途:快速验证视觉生成模型的效果、调试LoRA/ControlNet的参数,其底层原理理解有助于更好地进行Stable Diffusion的定制化开发和部署。
三、 模型优化/部署技术(生产环境落地关键)
- 模型剪枝(Model Pruning)
- 定义:一种模型压缩技术,通过移除模型中冗余的权重、神经元或网络层(如删除接近0的权重、无用的卷积核),在尽量不损失精度的前提下减小模型体积。
- 职位核心用途:压缩Stable Diffusion等大模型的体积,降低推理时的显存占用,提升批量处理图像/视频的效率,适配资源受限的生产服务器。
- 模型量化(Model Quantization)
- 定义:将模型中的高精度权重(如32位浮点数,FP32)转换为低精度格式(如16位浮点数FP16、8位整数INT8),减少模型的存储容量和计算量。
- 职位核心用途:大幅降低Stable Diffusion模型的推理延迟和显存占用(如FP16量化可减少50%显存占用),提升API服务的吞吐量,满足生产环境低延迟、高可用的要求。
- 模型蒸馏(Model Distillation)
- 定义:一种知识迁移技术,用一个性能优异但体积大、计算量大的"教师模型"(如SDXL),训练一个体积小、速度快的"学生模型",让学生模型学习教师模型的知识和推理逻辑。
- 职位核心用途:构建轻量级的视觉生成模型,适配边缘设备或低配置服务器的部署需求,同时尽量保留原模型的生成效果。
- ONNX(Open Neural Network Exchange)
- 定义:一种开源的神经网络模型格式,独立于深度学习框架(支持TensorFlow/PyTorch),能够实现模型在不同框架和平台间的跨平台迁移。
- 职位核心用途:将PyTorch训练/微调的Stable Diffusion模型转换为ONNX格式,作为模型优化和部署的中间格式,为后续使用TensorRT等工具进行高性能推理做准备。
- TensorRT
- 定义:NVIDIA推出的高性能深度学习推理优化引擎,支持对ONNX等格式的模型进行优化(如层融合、量化、并行计算优化),大幅提升模型在NVIDIA GPU上的推理速度。
- 职位核心用途:对Stable Diffusion模型进行极致推理优化,降低图像/视频处理的延迟,提升API服务的并发处理能力,满足生产环境高可用、低延迟的核心要求。
四、 视觉业务场景技术(实际业务落地)
- 图生图(Image to Image, Img2Img)
- 定义:以一张原始图像作为输入,结合文本提示词,通过扩散模型对原始图像进行修改、风格化、优化,生成一张新的、符合要求的图像。
- 职位核心用途:作为核心业务之一,实现图像的风格转换、瑕疵修复、内容修改等需求,需要基于Stable Diffusion进行定制化调优和批量处理。
- 扩图(Image Outpainting)
- 定义:也叫图像外延、图像扩展,在保留原始图像内容和风格的前提下,对图像的边缘(上下左右或全包围)进行扩展生成,增加图像的视野范围,且保证生成内容与原图自然衔接。
- 职位核心用途:实现图像的分辨率扩展、场景延伸等业务需求,需要结合ControlNet等工具保证扩图的结构一致性和自然度。
- 视频换脸
- 定义:通过计算机视觉和深度学习技术,将视频中的目标人物面部替换为另一人物的面部,同时保证替换后的面部与视频的姿态、表情、光线自然匹配,且视频流畅无卡顿。
- 职位核心用途:作为业务优化需求,需要结合OpenCV(视频帧提取/拼接)、Stable Diffusion/LoRA(面部生成/匹配)实现高质量、批量的视频换脸,保证生产环境的处理效率。
- 视频换背景
- 定义:将视频中的人物/主体与背景进行分离,移除原始背景并替换为新的背景(图像或视频),同时保证主体边缘清晰、与新背景的光线/视角匹配,视频流畅连贯。
- 职位核心用途:业务优化需求,依赖OpenCV(前景分割、视频处理)、视觉模型(主体分割)实现,可结合Stable Diffusion生成定制化背景。
- 视频去字幕
- 定义:通过图像处理技术,识别并移除视频中的内嵌字幕(硬字幕),同时修复字幕所在区域的图像内容,使其与周围背景自然衔接,不留下明显痕迹。
- 职位核心用途:业务优化需求,依赖OpenCV(字幕区域检测、图像修复)、可能结合深度学习模型(图像补全)实现批量视频的去字幕处理,保证视频质量不受影响。