• 计算机视觉---2.3---尺度空间算法


    尺度空间算法是计算机视觉的重要思想,无论是二维计算机视觉还是三维计算机视觉,尺度空间算法在图像配准,特征提取,运动估计方面都有很好的应用,这归功于算法的鲁棒性和对不同尺度图像的都具有很好的响应。

    尺度空间的思想

    尺度空间对图像的描述模拟了人眼由远及近的一个过程。
    对于远处的图像,能够提取的特征是轮廓,形状,整体。
    对于近处的图像,能够提取的特征是细节,小对比。
    举个例子,从远处看,松树和枫树是不一样的。在近处“世界上没有两片相同的叶子(同一棵树上)”。

    尺度空间金字塔

    尺度空间的思想是把一副图像变成一个图像族。由一副图像派生出多幅图像,通过对这个图像族的操作获取“广义的图像”所表达的含义。“广义的图像”指的是这幅图像所描述的场景,而不纠结于一个个像素。

    尺度空间生成算法

    Created with Raphaël 2.1.2一幅图片高斯平滑重采样(如2像素抽1)是否达到要求的最小尺度获得尺度空间Endyesno

    尺度空间生成算法有两个重要的步骤

    1. 高斯平滑
      高斯平滑的意义在于去除图像中的高频成分,由于高频成分会导致重采样时获得高频噪声,导致采样出错。
    2. 重采样
      重采样的意义是获取“粗”的图像。从而获取广义图像所表达的“大”内容。
    PGaussian(I)(n+1)=S(GσPGaussian(I)(n))

    其中

    1. PGaussian(I)(n+1)表示尺度空间生成的下一层图像
    2. PGaussian(I)(n)表示尺度空间的母图像。
    3. S表示重采样(downsample)。
    4. Gσ 表示一个高斯核
    5. 表示二维卷积

    实现尺度空间的代码

    talk is cheap, show you the code

    clear all
    close all
    clc
    ///////清空////////
    [a,b]=uigetfile('*');
    pic=imread(a);
    g_pic=rgb2gray(pic);
    imshow(g_pic)
    ///////从文件夹选取一张图片转灰度后显示///////
    f = fspecial('gaussian',[11 11],10);
    //////生成高斯模板////////////////////
    down_img = g_pic;
    while 1>0
    imfilter(down_img,f);
    down_ = downsample(down_img',2);
    down_img = downsample(down_',2);
    
    SIZE = size(down_img);
    if(SIZE(:,1))<10
        break
    end
    figure
    imshow(down_img)
    end

    这里利用的是matlab自带的重采样功能,因为只能对列重采样,所以先转置一次采样后再转置一次,matlab is so sweet。

    结果如下:
    这里写图片描述
    这里写图片描述
    这里写图片描述
    这里写图片描述

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    6个laravel常用目录路径函数
    Laravel上传产品图片Uploading img
    Laravel删除产品-CRUD之delete(destroy)
    Laravel编辑产品-CRUD之edit和update
    Laravel展示产品-CRUD之show
    Laravel创建产品-CRUD之Create and Store
    内存泄露从入门到精通三部曲之排查方法篇
    P问题、NP问题、NPC问题、NP难问题的概念
    二维码的生成细节和原理
    一分钟认识GitHub
  • 原文地址:https://www.cnblogs.com/ironstark/p/4892625.html
Copyright © 2020-2023  润新知