计算机视觉简介(1)

任何计算机视觉处理流程都始于成像系统,它从景物中捕获反射出来的光线,并将光信号转换成计算机可以读取和处理的图像格式 在计算机成像技术发展的早期,图像通过把胶卷或印刷图像素 化后获得;而现在图 像通常直接由数码相机获取,并存储成称为像素的有序数字 目前已有很多关于图像采集和照相机内部工作原理的教科书(例如光学、机械控制和彩色滤波等), 展示了光线进入相机形成图像的采样( 通过图像网格划分)和 量化(即用有限的整数 表示每 个像素的颜 色值) 过程
所有图像可以看作一个矩阵(或三 个矩阵,如果分别考虑色彩平面,该矩阵是景物的反射光在相机成像平面上的强度和色彩信息的量化数据, 显示了景物在数码相机上成像的过程:相机中的传感器阵列决定了 图像的大小和分辨率 假设传感器阵列有 个传感器,则产生大小的图像。每个传感器捕获通过透镜入射到该传感器上的光线。对于一位图像,传感器为每个采样赋予 0到(2的b次方  -1) 间的值 。假设一 位图像,那么采样值就在0到255 之间,如图 1-1 所示 上述过程称为采样和量化.所谓采样就是在连续视场中选择某些点;所谓量化就是把光强的取值限制在有限的离散数值内。在相机设计和相机模型中,采样、量化和图像形成涉及很多主题,感兴趣的读者可以查阅相关文献并进行更深入 的研究 。彩 色图像在照相机中通常会分别对应生成红 ( CR )、绿 ( CG) 和蓝 ( CB ) 个基色图像 。如 产生这些 图像 取决于相机,大多数消 费级相 机在传感器平面前设 置滤色器来捕获所有三个颜色通道的马赛克图像,然后依靠“解马赛克”过程来创建全分辨率 、分离的R,G,B 图像。
有了这个装置,我们就能把图像表示为计算机中可存储的数字数据,称为图像的像素表示。每个图像是表示一个(灰色)或三个(彩色)或更多(深度和其他场)通道的矩阵或张量。像素顺序与采样顺序相同,也就是采集像素的传感器的位置顺序。像素值越大,对应的颜色强度就越大,这可能是图像最明显的表示方法。图像越大,像素越多。当要捕获景物的细节时,传感器需靠得更近,产生的图像分辨率也越高。如果用两个大小不同的图像来拍摄现实世界的相同区域和视场,那么较大图像比较小图像具有更高的分辨率,这是因为较大图像可以分辨更多的细

节。对于灰度图像,我们通常使用二维离散矩阵I(ni,n2)来表示像素值矩阵,其中n1和n2分别索引矩阵的第n行和第n列的像素,I(ni,n2)的值对应像素强度。

虽然每个像素独立于其他像素进行采样,但相邻像素之间通常是相关的。因为典型场景不会在任何地方都有剧烈变化,除了两个不同实体间的边界像素外,相邻像素-般会很相似。因此,图像中像素值不连续(或变化较大)的“边界”能较好地识别出不同实体。通常情况下,除了实体边界的像素之外,自然景观的图像很多区域是平滑的(即没有变化或变化很小)。

如上所述,像素矩阵是图像的基本表示方式,通常称为空域表示。像素是对空间,更准确地说是对成像平面上的光强的测量值进行采样。还有使用所谓的频域方法来观察甚至获取图像,将图像分解成频率分量,类似于棱镜将太阳光分解成不同的色带。还有一些方法,如小波变换,使用时频变换来分析或分解图像,这里的时间在图像领域实际上是指空间。所有这些表示方法都称为图像的变换域表示。通常,图像的变换域表示是可逆的,即可以从变换域表示返回到原始图像。实际上,对于特定的处理任务使用哪种表示确实是个问题。除了空间域和变换域中的表示之外,许多计算机视觉任务首先从图像中(原始图像或一些变换域表示)计算各种类型的特征,然后基于所计算的特征执行- -些分析/推断任务。从某种意义上说,这种计算出的特征充当底层图像的新表示,故将此称为特征表示。下面,简要介绍几种常用的图像变换域表示和特征表示。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/98680.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql面试题25:数据库自增主键可能会遇到什么问题?应该怎么解决呢?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 面试官:数据库自增主键可能会遇到什么问题? 数据库自增主键可能遇到的问题: 冲突问题:自增主键是通过自动递增生成的唯一标识符,但在某些情况下可能会…

xlsx使用table_to_book报错Uncaught Unsupported origin when DIV is not a TABLE

背景:const workbook XLSX.utils.table_to_book(document.querySelector(‘#table-export’),{ raw: true//保留原始字符串 })报错Uncaught Unsupported origin when DIV is not a TABLE 原因:el-table是div格式 过程1:获取深层次的table…

简单聊聊 TCP 协议

简单聊聊 TCP 协议 如何实现可靠传输 ?完全可靠存在比特差错存在丢包流水线可靠数据传输协议回退N步 (GBN)选择重传 (ARQ) 小结 TCPTCP 连接报文段结构序号和确认号 可靠数据传输避免重传超时时间加倍快速重传回退N步还是选择重传 流量控制连接管理拥塞控制拥塞原因拥塞控制方…

Nacos 监控手册

Nacos 0.8.0版本完善了监控系统,支持通过暴露metrics数据接入第三方监控系统监控Nacos运行状态,目前支持prometheus、elastic search和influxdb,下面结合prometheus和grafana如何监控Nacos。与elastic search和influxdb结合可自己查找相关资料…

开发者指南:如何集成一对一直播美颜SDK到你的应用中

本文将为开发者们提供一个详细的指南,教你如何将一对一直播美颜SDK集成到你的应用中,以提供更具吸引力的直播体验。 -为什么选择一对一直播美颜SDK? 在开始之前,让我们先明确一下为什么选择一对一直播美颜SDK是一个明智的决定。…

uni-app:实现页面效果4(echarts数据可视化)

效果 代码 <template><view><view><view class"title">概况</view><view class"line_position"><view class"line1"><view class"item"><view class"one">今日销售…

图像分块及拼接

原图&#xff1a; 分块结果&#xff1a; 拼接结果&#xff1a; 代码&#xff1a; import numpy as np import cv2 as cv import matplotlib.pyplot as pltdef get_patch(img,patch_size):imgs []h,w,n img.shapenew_h, new_w patch_size, patch_sizecolint(w/patch_siz…

Ubuntu 20.04使用源码安装nginx 1.14.0

nginx安装及使用&#xff08;详细版&#xff09;是一篇参考博文。 http://nginx.org/download/可以选择下载源码的版本。 sudo wget http://nginx.org/download/nginx-1.14.0.tar.gz下载源代码。 sudo tar xzf nginx-1.14.0.tar.gz进行解压。 cd nginx-1.14.0进入到源代码…

nginx-proxy反向代理缓存

介绍&#xff1a; 反向代理缓存&#xff0c;类似于动静分离&#xff0c;即通过nginx代理服务器根据客户端发送的url请求&#xff0c;去后台服务器获取数据&#xff0c;将静态数据缓存到nginx代理服务器上&#xff0c;并配置有过期时间&#xff0c;当客户端下次以相同的url请求…

[鹏城杯 2022]简单的php - 无数字字母RCE+取反【*】

[鹏城杯 2022]简单的php 一、解题流程二、思考总结 题目代码&#xff1a; <?php show_source(__FILE__);$code $_GET[code];if(strlen($code) > 80 or preg_match(/[A-Za-z0-9]|\|"||\ |,|\.|-|\||\/|\\|<|>|\$|\?|\^|&|\|/is,$code)){die( Hello);}e…

时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测

时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测 目录 时序预测 | MATLAB实现ICEEMDAN-IMPA-LSTM时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 ICEEMDAN-IMPA-LSTM功率/风速预测 基于改进的自适应经验模态分解改进海洋捕食者算法长短期记忆网络时间序…

深度学习基础知识 nn.Sequential | nn.ModuleList | nn.ModuleDict

深度学习基础知识 nn.Sequential &#xff5c; nn.ModuleList &#xff5c; nn.ModuleDict 1、nn.Sequential 、 nn.ModuleList 、 nn.ModuleDict 类都继承自 Module 类。2、nn.Sequential、nn.ModuleList 和 nn.ModuleDict语法3、Sequential 、ModuleDict、 ModuleList 的区别…

【多线程进阶】线程安全的集合类

文章目录 前言1. 多线程环境使用 ArrayList2. 多线程环境使用队列3. 多线程环境使用哈希表3.1 HashTable3.2 ConcurrentHashMap 总结 前言 本文主要讲解 Java 线程安全的集合类, 在之前学习过的集合类中, 只有 Vector, Stack, HashTable, 是线程安全的, 因为在他们的关键方法中…

anaconda安装及配置+pytorch安装与配置(自用笔记)

anaconda安装及配置 1、anaconda官网下载安装包 下载好后进行安装 2、anaconda安装地址(记住安装路径)&#xff1a; 3、配置环境变量 打开anaconda prompt: 输入命令conda list: 可以看到安装好的很多包&#xff01; 至此anaconda配置完成。 PyTorch的安装与配置 使用con…

分库分表理论总结

一、概述 分库分表是在面对高并发、海量数量时常见的数据库层面的解决方案。通过把数据分散到不同的数据库中&#xff0c;使得单一数据库的数据量变小来缓解单一数据库的性能问题&#xff0c;从而达到提升数据库性能的目的。比如&#xff1a;将电商数据库拆分为若干独立的数据…

Android 自定义PopupWindow,实现下拉框

1、效果图 2、前言 1、页面由 MagicIndicator ViewPager2 Fragment 实现&#xff1b; 2、下拉框是基于WindowManager实现&#xff1b; 3、我使用PopupWindow实现下拉框时&#xff0c;发现一个问题&#xff0c;PopupWindow 在窗口显示的情况下&#xff0c;无法直接从外部修…

面试经典 150 题 4 —(数组 / 字符串)— 80. 删除有序数组中的重复项 II

80. 删除有序数组中的重复项 II 方法一 class Solution { public:int removeDuplicates(vector<int>& nums) {int len 0;for(auto num : nums)if(len < 2 || nums[len-2] ! num)nums[len] num;return len;} };方法二 class Solution { public:int removeDupli…

Rabbitmq安装-docker版

1.简介 2.安装消息队列 下载地址https://www.rabbitmq.com/download.html 使用docker方式安装 需要先下载docker&#xff0c;参考文章https://blog.csdn.net/weixin_43917045/article/details/104747341?csdn_share_tail%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22arti…

操作系统备考学习 day7 (2.3.4 ~ 2.3.5)

操作系统备考学习 day7 第二章 进程与线程2.3 同步与互斥2.3.4 信号量 用信号量实现进程互斥、同步、前驱关系信号量机制实现进程互斥信号量机制实现进程同步信号量机制实现前驱关系 2.3.5 经典同步问题生产者-消费者问题多生产者和多消费者模型抽烟者问题读者-写者问题哲学家进…

使用运放产生各种波形

目录复制 文章目录 RC正弦振荡电路文氏电桥振荡电路移项式正弦波振荡电路 集成函数发生器运算放大器驱动电容性负载峰值检波多通道运放未使用的运放接法 RC正弦振荡电路 文氏电桥振荡电路 这个振荡器起振条件RF > 2R1,起振后又希望RF 2R1产生矛盾怎么办&#xff1f; 将RF换…