图像分析的数据结构 | 【附笔试题的代码】

本文的主要内容来自 “世界著名计算机教材精选”——图像处理、分析与机器视觉(第4版) Milan Sonka等

输入“图像处理”可领取宝贵福利!!!

关注的小老板们多帅哦!!!


图像数据的表示层次

(1)数据结构与算法共同用于设计计算任务的解决方案

(2)视觉中数据结构可以松散地分类为

1)图标的

2)分割的

3)几何的

4)关系的

这些层次之间的界限并不是明确的


传统的图像数据结构

(1)矩阵(二维的数组)是低层图像表示的最普通的数据结构,用数组来实现

(2)矩阵直接地保存图像数据。空间特征可以间接地获得

(3)二值图像由二值矩阵来表示,多光谱图像由多个矩阵来表示,分层图像结构由不同分辨率的矩阵来表示

(4)“共生矩阵”是从图像矩阵中导出的全局信息的一个例子,它对于描述纹理有用

(5)可以用于描述像素路径,特别是边界

(6)链码在基于句法方法的识别中有用

(7)行程编码对于简单的图像压缩有用

(8)图结构可以用于描述区域及其邻接关系。这可以从区域图中导出,区域图是与图像同样大小的矩阵

(9)关系结构可以用于描述图像区域之间的语义关系

分层数据结构

(1)分层结构可以用于抽取大尺度特征,这些特征可以用于分析的初始化。它们具有明显的计算效率

(2)M型金字塔和T型金字塔为描述多个图像分辨率提供了数据结构

(3)四叉树是T型金字塔的变种,图像中的选择区域比其他区域在更高的分辨率上存储,允许选择性地提取细节

(4)有许多处理四叉树的算法,对于图像的很小变化,四叉树的变化有可能是很大的

(5)叶码提供了一种更有效的四叉树形式

(6)有很多产生金字塔的方法,取决于缩影窗口的选择


常见问题:反转单链表(笔试经常会被问到的问题)

解题思路:

假设当前创建好的链表如下:

首先让头节点与第一个元素节点断开,但是要注意在断开之前需要用p指针指向第一个元素节点来保存第一个元素节点的位置,然后再断开。在这里有一个指针q指向一个指针域为空的节点,这个节点用来做为链表反转后的最后一个节点。

让第二个元素节点的指针从指向第三个元素节点变为指向第一个元素节点,以此类推,直至指针p指向原链表最后一个元素。

p指针指向NULL时,让原头节点的指针域指向原来最后一个元素节点。此时链表倒置已完成。

代码如下:

详细链接如下:

https://blog.csdn.net/blioo/article/details/62050967

(0)

相关推荐