当前位置: 首页 > news >正文

Opencv 图像处理:数字图像的必会知识

本文已收录于Opencv系列专栏: 深入浅出OpenCV ,专栏旨在详解Python版本的Opencv,为计算机视觉的开发与研究打下坚实基础。免费订阅,持续更新。


文章目录

    • 数字图像
      • 1.数字图像概念
      • 2.数字图像起源
      • 3.常见成像方式
      • 4.数字图像的应用
        • γ 射线成像
        • X 射线成像
        • 可见光波段成像
        • 红外线波段成像
        • 微波波段成像
        • 射频波段成像
        • 图像处理、机器视觉、人工智能关系
      • 5.Opencv介绍
        • 环境安装
          • 安装 Opencv python
          • jupter切换环境

数字图像

1.数字图像概念

数字图像:

  • 数字图像,又称数码图像,一幅二维图像可以由一个数组或矩阵表示。
  • 数字图像可以理解为一个二维函数f(x,y), 其中 x 和 y 是空间平面坐标,而在任意坐标处的值 f 称为图像在该点处的强度或灰度。

图像处理目的:

  • 改善图示的信息以便人们解释;
  • 为存储、传输和表示而对图像进行的处理。

image-20221023151441017

2.数字图像起源

最早应用的行业

  • 媒体(报纸业)

最早应用的时间

  • 20 世纪 20 年代( 1921 年)

最早“数字图像处理”系统的用途

  • 通过海底电缆,将图像从伦敦传输至纽约。客观的讲,当时的应用并不涉及“数字图像处理”,而是“数字图像传输”

3.常见成像方式

电磁波谱

  • 光子即光量子( light quantum),电磁辐射的量子 E=hf ,其中
    h 为普朗克常量, f 为光的频率。普朗克常数的值约为: h=6.62 × 10^
    (-34) J·s ,单位为焦 J · 秒(s )。
  • 光速 波长与频率的关系: v=fλ
  • 波长与能量的关系 E = hc/λ
  • c = 光速

4.数字图像的应用

γ 射线成像

是波长小于 10^ 10 米的电磁波。这种不可见的电磁波是从原子核内发出来的,放射性物质或原子核反应中常有这种辐射伴随着发出。 γ 射线的穿透力很强,对生物的破坏力很大 。 大脑生理信号 EEG中常用这个频段 。

X 射线成像

也叫,伦琴射线,这部分电磁波波长从( 10~0.01) × 10^ -9 米。
CT 就是用 X 射线照射物体,由于生物组织或者工程组件的不同部位对 X 射线的吸收率不一样,从而得到不同的衰减以成像。

image-20221023153212883

密度越高,吸收的越多,会发白。

紫外线波段成像
波长比可见光短的称为紫外线,它的波长从 (380~10) × 10^ -9 米,它有显著的化学效应和荧光效应 。在生物医学领域应用最多。

可见光波段成像

这是人们所能感光的极狭窄的一个波段,波长从( 7.8~3.8)× 10^ -7 米,人类能 看见的所有物体都是可见光波段成像,也就是光线照射在物体上,反射到人眼中从而成像的 。

image-20221023153353795

红外线波段成像

红外线波长为 0.78——1000 微米的电磁波,其中波长为 0.78——2.0 微米的部分称为近红外,波长为 2.0——1000 微米的部分称为热红外线。自然界中,一切物体都可以辐射红外线,因此利用探测仪测量目标本身与背景间的红外线差可以得到不同的热红外线形成的红外图像。

image-20221023153444097

微波波段成像

波长从 1 米到 0.1 厘米,这些波多用在雷达或其它通讯系统。微波影像是应用成像微波辐射计(扫描型)接收地物发射波长为1mm~30cm 的微波辐射能形成的影像。

射频波段成像

波长从 3000 米到 10^-3 米,一般的电视和无线电广播、手机等的波段就是用这种波,但也能用于医学成像, MRI 是常见的影像诊疗手段。

传统领域

  • 医学、空间应用、生物学、军事

最新领域

  • 数码相机DC 、数码摄像机DV
  • 指纹识别、人脸识别,虹膜识别
  • 互联网、视频、多媒体等
  • 基于内容的图像检索、视频检索、多媒体检索
  • 水印、游戏、电影特技、虚拟现实、电子商务等

图像处理、机器视觉、人工智能关系

图像处理主要研究二维图像 ,处理一个图像或一组图像之间的相互转换的过程,包括 图像滤波,图像识别,图像分割等问题

计算机视觉主要研究映射到单幅或多幅图像上的三维场景从图像中提取抽象的语义信息,实现图像理解是计算机视觉的终极目标。

人工智能在计算机视觉上的目标就是解决像素值和语义之间关系 ,主要的问题有图片检测,图片识别,图片分割和图片检索。

5.Opencv介绍

image-20221023153945477

OpenCV 于 1999 年由 Intel 建立;

开源发行的跨平台计算机视觉库;

操作系统: Linux 、 Windows 、 Android 、 Mac OS

构成: C 函数和少量 C++ 类;

接口: Python 、 Java 、 MATLAB 等语言

opencv 是数字图像处理和计算机视觉领域最常见的工具包,是学习,科研,企业项目开发的好帮手。

环境安装

python 安装

  • 推荐版本 python3.6

Jupyter Notebook 安装

1.打开命令行 cmd
2.更新 pip python -m pip install --upgrade pip
3.安装 Jupyter: pip install jupyter

安装 Opencv python

1.打开命令行 cmd
2.pip install opencv-contrib-python

jupter切换环境

查看已有环境

conda env list

选择要想用的环境

conda activate xxx

下载ipykernel

pip install ipykernel

将改环境加入jupyter

python -m ipykernel install --name xxx

打开jupyter,在Kernel里选择所需要的环境即可。

相关文章:

  • 【Linux】Linux下的编辑器——vim
  • JVM是什么?
  • 基于ssm广东东莞大益球队管理系统-计算机毕业设计源码+LW文档
  • 对抗生成网络GAN系列——AnoGAN原理及缺陷检测实战
  • 动态卷积条件卷积
  • 元宇宙发展演变及安全风险研究
  • 数据结构线性表之顺序表的实现
  • 基于CNN的字符型验证码识别系统设计开发[完整源码实战]
  • 【轻敲stl的大门】函数模板和类模板
  • 网络安全红队常用的攻击方法及路径
  • IMX6ULL学习笔记(10)——通过TFTP烧录Linux内核
  • 【C++】STL —— String类不会怎么办? 看文档(万字详解)
  • Spring中@Autowired注解实现原理
  • 干货!手把手教你穿透内网
  • 人家网站都免费了,你还用Python去爬?
  • Android 初级面试者拾遗(前台界面篇)之 Activity 和 Fragment
  • js继承的实现方法
  • JS数组方法汇总
  • maya建模与骨骼动画快速实现人工鱼
  • Redis 中的布隆过滤器
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • webpack入门学习手记(二)
  • 搭建gitbook 和 访问权限认证
  • 利用jquery编写加法运算验证码
  • 区块链分支循环
  • 容器化应用: 在阿里云搭建多节点 Openshift 集群
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 在Docker Swarm上部署Apache Storm:第1部分
  • 自制字幕遮挡器
  • 白色的风信子
  • 教程:使用iPhone相机和openCV来完成3D重建(第一部分) ...
  • 数据可视化之下发图实践
  • ​​​​​​​GitLab 之 GitLab-Runner 安装,配置与问题汇总
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # Java NIO(一)FileChannel
  • # 数论-逆元
  • #NOIP 2014# day.2 T2 寻找道路
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (顶刊)一个基于分类代理模型的超多目标优化算法
  • (紀錄)[ASP.NET MVC][jQuery]-2 純手工打造屬於自己的 jQuery GridView (含完整程式碼下載)...
  • (教学思路 C#之类三)方法参数类型(ref、out、parmas)
  • (转)IOS中获取各种文件的目录路径的方法
  • ***微信公众号支付+微信H5支付+微信扫码支付+小程序支付+APP微信支付解决方案总结...
  • .Net - 类的介绍
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .pop ----remove 删除
  • @Autowired标签与 @Resource标签 的区别
  • [ Linux ] Linux信号概述 信号的产生
  • [AIGC] Nacos:一个简单 yet powerful 的配置中心和服务注册中心
  • [IE 技巧] 显示/隐藏IE 的菜单/工具栏
  • [LeetCode] Minimum Path Sum
  • [linux] git lfs install 安装lfs
  • [linux] shell中的()和{}
  • [Linux]进程创建➕进程终止
  • [pdf]《软件方法》强化自测题业务建模需求分析共191页,230题