我的NPI项目之Android Camera (二) -- 核心部件之 Camera Sensor
说到Camera模组,我们比较关心的是用的什么样的sensor? sensor的分辨率多少,sensor的像素多大,sensor是哪家生产的等等一些问题。今天,我们就穿越时间,将sensor的历史扒一扒。
Wikipedia先看一下:history of Camera
Camera的历史大体可以分为三大部分:
核心部件Sensor:
Sensor是什么?简单说就是传感器,用来感应什么?当然是感应光!
Sensor类型:
我所知道的sensor,有CCD的sensor,有CMOS的sensor。
What is CCD ?
CCD stands for "Charge-Coupled Device." It is a type of image sensor technology used in digital cameras and other imaging devices to capture and convert light into electronic signals.
// Charge-Copuled Device:
电荷耦合器件(charge-coupled device,CCD)是一种用于探测光的硅片,由时钟脉冲电压来产生和控制半导体势阱的变化,实现存储和传递电荷信息的固态电子器件。
A CCD image sensor is made up of an array of tiny light-sensitive elements called pixels. Each pixel is capable of converting incoming light photons into electrical charge(应该是有一种光敏材料,能够将光子转换为电子,电子汇集成电荷). The captured
charges are then transferred through the CCD chip, pixel by pixel, to a circuit where they are measured and converted into digital data that represents the image(将每个像素的电荷转化为对应的数字信号值,从而得到数值像素信息).
Here's a simplified overview of how a CCD works:
Photons of light enter the camera through the lens(镜头,后面应该还跟则滤光片Blue) and strike the surface of the CCD sensor.
The photons cause electrons in the pixels of the CCD to be excited, generating an electrical charge proportional to the intensity of the light.
The electrical charges are sequentially transferred through the CCD chip in a controlled manner, typically using a series of voltage shifts or clock signals.
The charges are read out and converted into digital values by an analog-to-digital converter (ADC) to create a digital image(模数转换后的图像信息).
CCD sensors have historically been widely used in digital cameras due to their high image quality, excellent color accuracy, and low noise performance. However, in recent years, complementary metal-oxide-semiconductor (CMOS) sensors have gained popularity due to their lower power consumption, faster readout speeds, and better integration with other circuitry on the sensor.
While CCD sensors are less common in consumer-level digital cameras today, they still find applications in specialized imaging devices, scientific cameras, medical detector, and some high-end digital cameras that prioritize image quality.
关于 CCD 到底长得什么模样以及它的组件放大图片,见下面两张:
what is CMOS ?
CMOS stands for "Complementary Metal-Oxide-Semiconductor."
互补金属氧化物半导体,作为软件出身的我,完全不懂啊,虽然数字电路/模拟电路都学过,哎。对不起,沙洲工学院的那位尽职的老师啊。
It is a type of technology used in the design and fabrication of integrated circuits, including image sensors used in digital cameras.
CMOS technology refers to the arrangement and structure of transistors and other components on a semiconductor chip. CMOS image sensors, specifically, are image sensors that utilize CMOS technology to capture and process images.
Compared to the CCD (Charge-Coupled Device) sensors, CMOS sensors have several advantages:
Lower Power Consumption: CMOS sensors typically consume less power, making them more energy-efficient.
Faster Readout Speed: CMOS sensors have faster readout speeds, allowing them to capture multiple frames per second, making them suitable for applications such as high-speed photography and video recording.
Integration with Other Circuitry: CMOS sensors can be easily integrated with other CMOS circuitry on the same chip, allowing for the integration of additional functionalities such as on-chip processing and image enhancement(ISP吗?).
Cost-Effectiveness: CMOS technology is generally more cost-effective to manufacture compared to CCD technology.
Due to these advantages, CMOS image sensors have become the dominant technology used in most consumer-level digital cameras, smartphones, webcams, and other imaging devices. They offer good image quality, flexibility, and cost-efficiency, making them suitable for a wide range of applications.
以上是对CCD和CMOS的相关理解,最根本区别会需要走到最底层半导体方面的知识了。
CCD和CMOS还有个差异是,CDD的物理像素不可个别读取,但是CMOS可以。因为,从原理上讲,CMOS 的信号是以点为单位的电荷信号,而 CCD 是以行为单位的电流信号,前者更为敏感,速度也更快,更为省电。
相关知识点:
- sensor尺寸
通常能够看到1/1.8CDD这样的描述,1/1.8是CDD sensor的尺寸。是1➗1.8✖ 1 inch为对角线的长度。 - pixel尺寸
相同的像素,pixel越大感光越多,画质越好。 - Mosaic Capture 的类型
和 - 通常CCD芯片会和处理器(DSP/ISP)做成一个组件,类似与下图:
- 三层结构
如果切开 CCD,会发现 CCD 的结构就像三明治一样,第一层是微型镜头,第二层是分色滤色片,以及第三层感光汇流片。 - CMOS 主要 是利用硅和锗这两种元素所作成的半导体,通过 CMOS 上带负电和带正电的晶体管来实现基本的功能的。这两个互补效应所 产生的电流即可被处理芯片记录和解读成影像。
Sensor 厂家:
网上知道了一个sensor生产商的世界排名:https://us.metoree.com/categories/image-sensor/
发现原来sensor有很多种类,我的项目中是消费类的digital camera使用的场景。
Vision Sensor(Banner )/ Image Sensor(Toshiba ) / Liner Image Sensors (Toshiba )/ Machine vision (Toshiba )/ 2-D Vision Sensors(Pepperl+Fuchs) /Machine vision image sensor (Cognex 康耐视 ) / Image Sensors(Rochester ) / Image Sensor (OMNIVISION ) / Linear Images Sensors (iC-Haus) / TMR Magnetic Image Sensors (MultiDimension ) / CMOS Image sensors (ams-OSRAM AG) /
COMS image sensor 世界前十排名:
Sony 索尼
Samsung Electronics 三星
STMicroelectronics 意法半导体
GalaxyCore 格科微:首页-格科微电子(上海)有限公司
Onsemi 昂赛美
SK Hynix 海力士
SmartSens Technology: 斯特威: 思特威(上海)电子科技股份有限公司 | 专注CMOS图像传感器的创新与研发
Canon 佳能
Panasonic 松下
PixelPlus
前十里面已经有两家国产公司,加油!
相关文章:

我的NPI项目之Android Camera (二) -- 核心部件之 Camera Sensor
说到Camera模组,我们比较关心的是用的什么样的sensor? sensor的分辨率多少,sensor的像素多大,sensor是哪家生产的等等一些问题。今天,我们就穿越时间,将sensor的历史扒一扒。 Wikipedia先看一下࿱…...
【四】3D Object Model之测量Features——get_object_model_3d_params()算子
😊😊😊欢迎来到本博客😊😊😊 🌟🌟🌟 Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有…...

C++学习Day09之系统标准异常
目录 一、程序及输出1.1 系统标准异常示例1.2 标准异常表格 二、分析与总结 一、程序及输出 1.1 系统标准异常示例 #include<iostream> using namespace std; #include <stdexcept> // std 标准 except 异常class Person { public:Person(int age){if (age <…...

企业计算机服务器中了crypt勒索病毒怎么办,crypt勒索病毒解密数据恢复
计算机服务器设备为企业的生产运营提供了极大便利,企业的重要核心数据大多都存储在计算机服务器中,保护企业计算机服务器免遭勒索病毒攻击,是一项艰巨的工作任务。但即便很多企业都做好的了安全运维工作,依旧免不了被勒索病毒攻击…...
npm详解:掌握package.json配置
package.json 文件中的 scripts 配置允许你定义一系列脚本命令,这些命令可以通过 npm run <script-name> 来执行。下面是一些常见的 scripts 配置,以及它们的详解和举例。 常见的 scripts 配置 start 这是最常用的脚本,通常用于启动应…...

Git基础操作
1、git 基础命令 //克隆远端仓库 git clone http://dddddd.git //初始化仓库 git init //查看状态 git status //添加所有文件到缓存区 git add . //查看版本日志 git reflog //将更新提交到本地仓库 git commit -m "日志摘要" //将当前版本回退到某个版本 git rese…...
怎么卸载Nvidia显卡驱动
在Ubuntu 22.04上卸载Nvidia显卡驱动并手动重新安装的步骤可以分为几个主要部分。请确保在执行这些步骤之前,你已经备份了重要的数据,以防出现任何问题。 卸载当前的Nvidia驱动 打开终端:你可以通过按CtrlAltT快捷键来打开终端。 查找安装的…...

JS进阶——解构赋值
数组解构 基本: let [a, b, c] [1, 2, 3]; // a 1 // b 2 // c 3 可嵌套 let [a, [[b], c]] [1, [[2], 3]]; // a 1 // b 2 // c 3 可忽略 let [a, , b] [1, 2, 3]; // a 1 // b 3 不完全解构 let [a 1, b] []; // a 1, b undefined 剩余运…...

[Flask]SSTI1 buuctf
声明:本篇文章csdn要我一天发两篇所以我来水的 跟ssti注入的详细知识我这里写了 https://blog.csdn.net/weixin_74790320/article/details/136154130 上面链接我复现了vulhub的SSTI,其实本质上是一道题 然后我们就用{{.__class__}}看类的类型…...
k8s学习整理文档
整理文档 实验环境 服务器 最低配置要求: 2 核虚拟 CPU4 GB 内存20 GB 储存空间X 4 台 (三台集群,一台镜像仓库服务器) 网络环境 由于搭建网络需要,同时要让各个主机互通,因此这里需要对云服务器设置专门的网络(同时也需要开放服务器对应的公网 IP) 在云…...
git----->git pull和git fetch区别
git pull 和 git fetch 是 Git 中两个常用的命令,它们都用于从远程仓库获取最新的内容。然而,它们的行为有所不同: git fetch: git fetch 命令用于从远程仓库获取最新的历史记录和数据,但它不会自动合并或修改你当前的工作。它只是…...

如何使用Docker部署MongoDB并结合内网穿透实现远程访问本地数据库
文章目录 前言1. 安装Docker2. 使用Docker拉取MongoDB镜像3. 创建并启动MongoDB容器4. 本地连接测试5. 公网远程访问本地MongoDB容器5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定TCP地址远程访问 正文开始前给大家推荐个网站,前些天发现了一个巨牛的 …...

适用于 Windows 的 12 个最佳 PDF 编辑器
PDF文档的普遍存在按理说,PDF文档的可读性和可移植性受到专业文档的青睐。 然而,PDF格式的可食用性是一大缺陷。幸运的是,各种 PDF 编辑工具和软件使 PDF 的编辑变得更加容易,这篇文章旨在帮助我们的读者找到其中最好的工具和软件…...
C++面试:SQL注入、web shell攻击的危害和规避方法
目录 SQL注入 工作原理 危害 规避方法 示例背景 Web Shell攻击 工作原理 危害 规避方法 SQL注入和Web Shell攻击是两种常见的网络安全威胁,它们可以对系统造成严重的危害。了解它们的工作原理、危害以及如何规避是网络安全防护的基本要求。下面将详细介绍这…...

计算机网络基础之计算机网络组成与分类
计算机网络基础 计算机网络是计算机技术与通信技术发展相结合的产物,并在用户需求的促进下得到进一步的发展。通信技术为计算机之间的数据传输和交换提供了必需的手段,而计算机技术又渗透到了通信领域,提高了通信网络的性能。 计算机网络的…...
怎么使用Git进行版本恢复
场景 在实际工作过程中,有时候会出现以下问题: 1.在使用git对代码进行远程仓库托管时,会出现误操作,怎么恢复上一个版本或指定历史版本? 2.git 误操作,将代码提交到 master 主分支,怎么恢复 …...

三防平板电脑丨亿道工业三防平板丨三防平板定制丨机场维修应用
随着全球航空交通的增长和机场运营的扩展,机场维护的重要性日益凸显。为确保机场设施的安全和顺畅运行,采取适当的措施来加强机场维护至关重要。其中,三防平板是一种有效的工具,它可以提供持久耐用的表面保护,使机场维…...

基于深度学习的红肉新鲜过期判决系统matlab仿真
目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 系统构成与流程 4.2 模型训练与优化 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 MATLAB2022a 3.部分核心程序 ...............................................…...

mysql 锁详解
目录 前言 一、全局锁 二、表级锁 三、行锁 前言 为什么要设计锁,锁设计初衷是为了解决多线程下并发问题。出现并发的时候用锁进行数据同步,避免因并发造成了数据错误(数据覆盖)。可见锁的重要性,并不是所有的数据库都有锁。比如Redis&a…...

【PX4-AutoPilot教程-TIPS】PX4控制无人机在Gazebo中飞行时由于视角跟随无人机在画面中心导致视角乱晃的解决方法
PX4控制无人机在Gazebo中飞行时由于视角跟随无人机在画面中心导致视角乱晃的解决方法 问题描述解决方法 问题描述 无人机在Gazebo中飞行时,无人机始终处于画面中央,会带着视角乱晃,在Gazebo中进行任何操作视角都无法固定。 观察Gazebo左侧Wo…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

基于FPGA的PID算法学习———实现PID比例控制算法
基于FPGA的PID算法学习 前言一、PID算法分析二、PID仿真分析1. PID代码2.PI代码3.P代码4.顶层5.测试文件6.仿真波形 总结 前言 学习内容:参考网站: PID算法控制 PID即:Proportional(比例)、Integral(积分&…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

Swift 协议扩展精进之路:解决 CoreData 托管实体子类的类型不匹配问题(下)
概述 在 Swift 开发语言中,各位秃头小码农们可以充分利用语法本身所带来的便利去劈荆斩棘。我们还可以恣意利用泛型、协议关联类型和协议扩展来进一步简化和优化我们复杂的代码需求。 不过,在涉及到多个子类派生于基类进行多态模拟的场景下,…...
STM32+rt-thread判断是否联网
一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

MySQL 8.0 OCP 英文题库解析(十三)
Oracle 为庆祝 MySQL 30 周年,截止到 2025.07.31 之前。所有人均可以免费考取原价245美元的MySQL OCP 认证。 从今天开始,将英文题库免费公布出来,并进行解析,帮助大家在一个月之内轻松通过OCP认证。 本期公布试题111~120 试题1…...

IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...
【学习笔记】深入理解Java虚拟机学习笔记——第4章 虚拟机性能监控,故障处理工具
第2章 虚拟机性能监控,故障处理工具 4.1 概述 略 4.2 基础故障处理工具 4.2.1 jps:虚拟机进程状况工具 命令:jps [options] [hostid] 功能:本地虚拟机进程显示进程ID(与ps相同),可同时显示主类&#x…...