像素越多越好?像元的面積越小越好?為何底大一級壓死人?

像素越多越好?像素點的面積越小越好?為何底大一級壓死人?

?

像素是:圖像最小單元的數量,例如6000*4000,像素數量就是24*10^6。

像素太少當然圖像就看不見了,看不清晰了。

但是現在幾乎所有手機和相機的像素數都遠遠符合要求。現在限制圖像清晰的,通常來說都不是像素的問題,而是鏡頭和畫幅問題。

?

拍到的圖像的清晰程序是鏡頭和傳感器共同決定的。

這個具體怎么共同決定可以看我另一個博客:

https://blog.csdn.net/cashmood/article/details/112799151

?

我們常說底大一級壓死人,確實全畫幅的相機相對貴不少。

全畫幅相機既然面積大,那是不是像素就更多呢?

我找了淘寶的索尼a6000半畫幅和索尼a7m3全畫幅來比較一下:

?

我們看,他們兩個一個全畫幅,一個半畫幅,像素數卻是差不多的。

根據公式:單個像元面積 * 像素數量 = 傳感器總面積

所以可以看出來全畫幅和半畫幅最大的差別本質在于:單個像元的大小面積不同。

顯然在上面這種情況下,像元面積越大,越貴,拍照效果越好。實際上,色彩也越鮮艷。

為什么呢?

?

因為單個像素的尺寸很小的時候:(小面積pixel的壞處)

  1. 進光量越小,單個像元接受到的信號變弱,信噪比低
  2. 由于襯底內少數載流子橫向擴散導致像素之間的信號會互相干擾。
  3. 傳感器cmos上的每個像元上都有一個微透鏡增加接受光的能力,當外界光斜著入射時,像元上微透鏡之間光信號串擾。
  4. 波動光學和傅里葉光學理解,光的衍射效應更明顯,光斜著入射時,高頻光入射引起的信號串擾。

?

那是不是像素單元面積越大越好呢,當然不是,如果整個全畫幅傳感器只有10個像素,夠大吧,但是一定啥也看不見。

所以像元越大越好的前提是像素數量足夠用了,滿足奈奎斯特采樣定理了,或者說能接受的頻率成分大于鏡頭獲取到的頻率成分了。

?

那么有各奇怪的現象,手機廠商為何仍然把像素弄的那么大?比如華為P30Pro的主攝的原始像素是40MP,即4千萬像素,但是輸出卻為1千萬像素。

這就是小的像元的另一個很重要的好處:

當高像素的照片縮小為低像素的照片的時候,圖像的噪聲也隨著變小,信噪比提高。

?

總結小的像元面積的兩個好處:

1、同樣傳感器面積下,容易使得像素數量大,則采集高頻成分,細節多,奈奎斯特采樣定理。

2、當高像素的照片縮小為低像素的照片的時候,圖像的噪聲也隨著變小,信噪比提高。

?

所以,結論是:

在保證像素數夠用的前提下,像元面積越大越好,畫幅越大越好。

但是畫幅也不可能無限大,一方面受限于制作cmos工藝,另一方需要配套對應大的鏡頭。

?

?

這是我經過各種理解總結的,如果不同想法可留言討論,轉載請注明出處。

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/254062.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/254062.shtml
英文地址,請注明出處:http://en.pswp.cn/news/254062.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

設計模式(5)--工廠模式

//5.工廠模式 //ver1 //回顧簡單工廠模式 class OperationFactory { public:static Operation createOperation(char chOper){Operation * op NULL;switch(chOper){case :op new OperationAdd();break;case -:op new OperationSub();break;default:break;}return *op;} };vo…

對于多屬性類型系統的數據庫設計

主要是以下幾類系統: 生活信息系統, 內容:小, 屬性:大,電商商品系統, 內容:大, 屬性:大,風控征信系統, 內容:小, 屬性:大,新聞系統, 內容:大, 屬性:小,這些系統共同的特點, 都是在主體內容上會攜帶多個屬性, 并且屬性需要隨時能調整, 并且要求能兼容舊屬性, 還需要頻繁的通過屬…

linux環境部署常用命令

1.  查看當前所屬目錄:pwd2.  回到上級目錄:cd ../回到上兩級目錄:cd ../ ../3.  查看當前目錄下有哪些文件:ls4.  查看最后100行日志:tail -100 catalina.out動態重看操作日志:tail -f catalina.o…

DM6446開發攻略:V4L2視頻驅動和應用分析

針對DAVINCI DM6446平臺,網絡上也有很多網友寫了V4L2的驅動,但只是解析Montavistalinux-2.6.10 V4L2的原理、結構和函數,深度不夠。本文決定把Montavista 的Linux-2.6.18 V4L2好好分析一下,順便講解在產品中的應用,滿足…

相機像素尺寸(像元大小)和成像系統分辨率之間的關系

相機像素尺寸(像元大小)和成像系統分辨率之間的關系 在顯微成像系統中,常常會用分辨率來評價其成像能力的好壞。這里的分辨率通常是指光學系統的極限分辨率以及成像探測器的圖像分辨率。最終圖像所呈現出的實際分辨率,取決于二者的…

H5網頁播放器播不了服務器上的mp4視頻文件

打開IIS,在功能視圖里找到MIME類型菜單,打開該菜單后鼠標右鍵添加.mp4擴展名的MIME類型video/mp4 其他視頻文件播放不了估計也得在IIS里添加對應的MIME類型(從服務器下載文件時也得添加對應的MIME類型) 轉載于:https://www.cnblog…

不定寬度居中

一、傳統方法 <div class"wrap"><div class"inner">html &#xff1a; 讓 inner 居中</div> </div> .wrap {float: left; /* 自適應內容寬度 */position: relative;left: 50%; } .inner {position: relative;left: -50%; } 二、…

文章目錄自動生成器

提供一個插件&#xff0c;可以實現segmentfault的文章目錄效果啦~~ 不止點擊跳轉還滾動激活當前鏈接 demo地址 使用很簡單 <!-- 文章容器 --> <div id"kCatelog"></div> <!-- 目錄容器 --> <div class"k-catelog-list" id"…

基于ARM+DSP進行應用開發-經驗共享

針對當前應用的復雜性&#xff0c;SOC芯片更好能能滿足應用和媒體的需求&#xff0c;集成眾多接口&#xff0c;用ARM做為應用處理器進行多樣化的應用開發和用戶界面和接口&#xff0c;利用DSP進行算法加速&#xff0c;特別是媒體的編解碼算法加速&#xff0c;既能夠保持算法的靈…

工業相機之全局曝光與卷簾曝光

曝光方式包括兩種&#xff1a; 全局曝光&#xff08;global shutter&#xff09;卷簾曝光&#xff08;rolling shutter&#xff09; CCD相機都是全局曝光&#xff0c;CMOS相機既有全局曝光也有卷簾曝光 全局曝光 全局曝光的方式比較簡單。也就是說光圈打開后&#xff0c;整個圖…

Hibernate入門注解筆記

Entity 代表實體 映射一張表 Table 定義表的屬性 Embeddable 定義類級別可以被嵌入 Id 指定主鍵 GeneratedValue 指定主鍵生成策略 Column指定列級別的屬性 Embedded 指定屬性為被包含類 將被包含類 作為 包含類的 字段屬性 寫入同一張表 EmbeddedId 指定包含類為特定主鍵 實…

.NET 環境中使用RabbitMQ

在企業應用系統領域&#xff0c;會面對不同系統之間的通信、集成與整合&#xff0c;尤其當面臨異構系統時&#xff0c;這種分布式的調用與通信變得越發重要。其次&#xff0c;系統中一般會有很多對實時性要求不高的但是執行起來比較較耗時的地方&#xff0c;比如發送短信&#…

css3 pointer-events:none 允許點擊穿透

開發時加了蒙層&#xff0c;卻可以點擊到蒙層下邊的元素。查了以后才發現是 pointer-events:none屬性具有允許點擊穿透的功能&#xff0c;將其設為 pointer-events:auto就好使了。事件穿透讓我想起了zepto.js中的tap事件同樣會引發事件穿透的效果。如果用tap事件是為了提升響應…

成像質量、像素個數、感光元件尺寸的關系

成像質量、像素個數、感光元件尺寸的關系 感光元件 (影像傳感器) 就是拍攝的照片最終成像的位置。相當于傳統相機里面的膠卷&#xff0c;不同相機的感光元件尺寸是不一樣的。 1. 像素的含義 兩個 100 平方米的房子 A 和 B&#xff0c;A 房子里面平均分成 10 個房間&#xff…

setjmp與logjmp用法總結

setjmp/logjmp的最大用途是錯誤恢復&#xff0c;只要還沒有從主函數退出&#xff0c;一旦發現一個不可恢復的錯誤&#xff0c;可以把主控制轉移大主函數循環&#xff0c;并從那從新開始。使用時必須包含頭文件<setjmp.h> setjmp與longjmp結合使用時&#xff0c;它們必須…

JQ對象到底是什么

jQuery對象是什么&#xff0c;舉個例子&#xff0c;$(#id) 返回的就是jQuery對象&#xff0c;這個東西是整個jQuery的核心所在&#xff0c;所以我先來分析它。 var jQuery function( selector, context ) { // The jQuery object is actually just the init constructor enhan…

15、iOS開發之duplicate symbols for architecture x86_64錯誤

1. 錯誤提示 2. 分析錯誤原因 3. 解決問題辦法 一、錯誤提示 在我們寫代碼過程中可能會經常遇到這樣一個錯誤&#xff1a; [objc] view plaincopy print?<span style"font-size:32px;color:#ff0000;">ld: 4 duplicate symbols for architecture x86_64 clang…

【死磕Java并發】----- 死磕 Java 并發精品合集

【死磕 Java 并發】系列是 LZ 在 2017 年寫的第一個死磕系列&#xff0c;一直沒有做一個合集&#xff0c;這篇博客則是將整個系列做一個概覽。 先來一個總覽圖&#xff1a; 【高清圖&#xff0c;請關注“Java技術驛站”公眾號&#xff0c;回復&#xff1a;腦圖JUC】 【死磕Java…

vs官方使用教程中文版與英文版

Visual Studio IDE 中文文檔 https://docs.microsoft.com/zh-cn/visualstudio/ide/ Visual Studio IDE documentation https://docs.microsoft.com/en-us/visualstudio/ide/

linux subsys_initcall

宏定義__define_initcall(level,fn)對于內核的初始化很重要&#xff0c;他指示編譯器在編譯的時候&#xff0c;將一系列初始化函數的起始地址值按照一定的順序放在一個section中。在內核初始化段&#xff0c;do_initcalls() 將按順序從該section中以函數指針的形式取出這些函數…