精华内容
下载资源
问答
  • 结构张量structure tensor

    2021-04-19 01:22:50
    链接的文章中此算法名称为Strukturtensor算法,不过我搜索了一下,Strukturtensor这个单词好像是德语,翻译过来就是structure tensor结构张量了。此处所说的张量不是相对论或黎曼几何里的张量,黎曼几何的张量好多...

    此算法也算是计算机科学最重要的32个算法之一了。链接的文章中此算法名称为Strukturtensor算法,不过我搜索了一下,Strukturtensor这个单词好像是德语,翻译过来就是structure tensor结构张量了。

    此处所说的张量不是相对论或黎曼几何里的张量,黎曼几何的张量好多论文都叫张量场了。也不是数学界还没研究明白的对矩阵进行扩展的高阶张量,主要是张量分解。这里的结构张量就是一个矩阵,一个对图像像素进行组织的数据结构而已。

    像素组织而成的矩阵如下:

    1ce4d1dbd796e92f184bdda9f4fa8cc0.gif

    这个公式太常见了,在harris角点检测中就用到了。其中Ix,Iy就是原对原图像在x和y方向求得的偏导。

    然后求矩阵E的行列式K和迹H。然后根据K和H的关系就能区分图像的区域模式了。

    模式分以下三类:

    平坦区域:H=0;

    边缘区域:H>0 && K=0;

    角点区域:H>0 && K>0;

    harris角点检测就用到了第三类判断。

    当然,在实际应用的时候H和K的值肯定都不会是理想,所以我用的都是近似判断。

    处理结果如下:

    原图:

    f84e7583d948437f03cc3a39f92a6a95.png

    平坦区域:

    bab4a29ad95310219f08e6a6ec745fd5.png

    边缘区域:

    e3497de4cb226ec0891b6348ee20eb2b.png

    角点区域(好像也不全角点,求角点还是harris好了):

    e1f7553b8abb306e504afbe743597f54.png

    结构张量行列式与迹的关系:

    8dbfa251403cefd53dd19a7c07cd236a.png

    其中红框为平坦区域,黄框为边缘区域,铝框为角点区域。

    matlab代码如下:

    clear all; close all; clc;

    img=double(imread('lena.jpg'));

    [m n]=size(img);

    imshow(img,[])

    [Ix Iy]=gradient(img);

    Ix2=Ix.^2;

    Iy2=Iy.^2;

    Ixy=Ix.*Iy;

    k=1;

    lambda=zeros(m*n,2);

    for i=1:m

    for j=1:n

    st=[Ix2(i,j) Ixy(i,j);Ixy(i,j) Iy2(i,j)]; %结构张量

    K=det(st); %求行列式

    H=trace(st); %求迹

    %所有的判断都是近似的

    %if H<50

    % if H>50 && abs(K)<0.01*10^(-9) %认为是边缘区域

    if H>50 && abs(K)>0.01*10^(-9) %认为是角点区域

    img(i,j)=255;

    end

    lambda(k,:)=[K H];

    k=k+1;

    end

    end

    figure;

    plot(lambda(:,1),lambda(:,2),'.');

    ylabel('trace');xlabel('det');

    figure;

    imshow(img,[])

    展开全文
  • OpenCV梯度结构张量的各向异性图像分割梯度结构张量的各向异性图像分割目标什么是梯度结构张量源代码解释结果 梯度结构张量的各向异性图像分割 目标 在本教程中,您将学习: 什么是梯度结构张量 如何通过梯度结构...

    梯度结构张量的各向异性图像分割

    目标

    在本教程中,您将学习:

    什么是梯度结构张量

    如何通过梯度结构张量估计各向异性图像的方向和相干性
    如何通过梯度结构张量分割具有单个局部方向的各向异性图像
    什么是梯度结构张量?
    在数学中,梯度结构张量(也称为第二矩矩阵,第二阶矩张量,惯性张量等)是从函数的梯度导出的矩阵。它总结了点的指定邻域中渐变的主要方向,以及这些方向的相干程度(相干性)。梯度结构张量广泛用于2D / 3D图像分割,运动检测,自适应滤波,局部图像特征检测等图像处理和计算机视觉中。

    各向异性图像的重要特征包括局部各向异性的方向和相干性。在本文中,我们将展示如何估计方向和相干性,以及如何通过梯度结构张量分割具有单个局部方向的各向异性图像。

    图像的梯度结构张量是2x2对称矩阵。梯度结构张量的特征向量表示局部方向,而特征值给出相干性(各向异性的一种度量)。

    图像的梯度结构张量可以表示为:Ĵž

    展开全文
  • 结构张量(structure tensor) 主要用于区分图像的平坦区域、边缘区域与角点区域。此处的张量就是一个关于图像的结构矩阵,矩阵结构构成如下:Rx,Ry分别为图像的水平与垂直梯度,而后进行求矩阵T的行列式K与迹(trace)H...

    7c56b19dcb4f02c20d63a4e3ae9671cf.png

    结构张量(structure tensor) 主要用于区分图像的平坦区域、边缘区域与角点区域。

    此处的张量就是一个关于图像的结构矩阵,矩阵结构构成如下:ab057834b7db83d131c54d4b9388d74c.png

    Rx,Ry分别为图像的水平与垂直梯度,而后进行求矩阵T的行列式K与迹(trace)H。

    根据K与H的关系来求得区分图像的平坦、边缘与角点区域:

    平坦区域:H=0;

    边缘区域:H>0 && K=0;

    角点区域:H>0 && K>0;

    该方法实际应用实例如下:

    原图:929b0c29f03615ffb735cde4659661bf.png

    边缘区域:

    3dc1c6ea96048f683a29edfa3f641fc8.png

    边缘区域中 行列式与迹的关系图:

    f45bc14eb75ca7d3678e0c3b8f5b1b6b.png

    matlab实现代码如下:

    clc;

    clear;

    img=double(imread('F:\Users\Revere\Pictures\CameraRoll\imgwork\smile.png'));

    [m n]=size(img);

    imshow(img,[]);

    [Ix Iy]=gradient(img);

    Ix2=Ix.^2;

    Iy2=Iy.^2;

    Ixy=Ix.*Iy;

    k=1;

    lambda=zeros(m*n,2);

    for i=1:m

    for j=1:n

    st=[Ix2(i,j) Ixy(i,j);Ixy(i,j) Iy2(i,j)]; %结构张量

    K=det(st);

    H=trace(st); %求迹

    %所有判断都是近似的

    % if H<50 %认为是平坦区域

    if H >50 && abs(K)<0.01*10^(-9) %认为是边缘区域

    % if H >50 && abs(K) >0.01*10^(-9) %认为是角点区域

    img(i,j)=255;

    end

    lambda(k,:)=[K,H];

    k=k+1;

    end

    end

    figure;

    plot(lambda(:,1),lambda(:,2),'.');

    ylabel('trace');

    xlabel('det');

    figure;

    imshow(img,[]);

    本文转自:博客园 - revere,转载此文目的在于传递更多信息,版权归原作者所有。

    展开全文
  • 结构张量(structure tensor)主要用于区分图像的平坦区域、边缘区域与角点区域。此处的张量就是一个关于图像的结构矩阵,矩阵结构构成如下: Rx,Ry分别为图像的水平与垂直梯度,而后进行求矩阵T的行列式K与迹(trace)H...

    结构张量(structure tensor) 主要用于区分图像的平坦区域、边缘区域与角点区域。

    此处的张量就是一个关于图像的结构矩阵,矩阵结构构成如下:

    15fe1a1ee3d7da4db016deeaeb968277.png

    Rx,Ry分别为图像的水平与垂直梯度,而后进行求矩阵T的行列式K与迹(trace)H。

    根据K与H的关系来求得区分图像的平坦、边缘与角点区域:

    平坦区域:H=0;

    边缘区域:H>0 && K=0;

    角点区域:H>0 && K>0;

    该方法实际应用实例如下:

    原图:

    f201ba90be7448bc1d46c892f8165f49.png

    边缘区域:

    322a371252dbd5b4f51589aad473be04.png

    边缘区域中 行列式与迹的关系图:

    cd337438a72fe8b3f78dd50bc9c32f7a.png

    matlab实现代码如下:

    clc;

    clear;

    img=double(imread('F:\Users\Revere\Pictures\CameraRoll\imgwork\smile.png'));

    [m n]=size(img);

    imshow(img,[]);

    [Ix Iy]=gradient(img);

    Ix2=Ix.^2;

    Iy2=Iy.^2;

    Ixy=Ix.*Iy;

    k=1;

    lambda=zeros(m*n,2);

    for i=1:m

    for j=1:n

    st=[Ix2(i,j) Ixy(i,j);Ixy(i,j) Iy2(i,j)]; %结构张量

    K=det(st);

    H=trace(st); %求迹

    %所有判断都是近似的

    % if H<50 %认为是平坦区域

    if H>50 && abs(K)<0.01*10^(-9) %认为是边缘区域

    % if H>50 && abs(K)>0.01*10^(-9) %认为是角点区域

    img(i,j)=255;

    end

    lambda(k,:)=[K,H];

    k=k+1;

    end

    end

    figure;

    plot(lambda(:,1),lambda(:,2),'.');

    ylabel('trace');

    xlabel('det');

    figure;

    imshow(img,[]);

    展开全文
  • 一种融合结构张量与非局域全变分的图像去噪方法【技术领域】[0001] 本发明属于图像处理技术领域,涉及一种融合结构张量与非局域全变分的图像去 噪方法。【背景技术】[0002] 图像去噪是图像处理领域的一个基础问题,...
  • 根据结构张量能区分图像的平坦区域、边缘区域与角点区域。此算法也算是计算机科学最重要的32个算法之一了。链接的文章中此算法名称为Strukturtensor算法,不过我搜索了一下,Strukturtensor这个单词好像是德语,翻译...
  • 用OpenCVSharp 4.5跑一遍OpenCV官方教程 原OpenCV官方教程链接:OpenCV: Anisotropic image segmentation by a gradient structure tensor using OpenCvSharp; using System; namespace ConsoleApp1 ......
  • %用于存储结构张量中的行列式与迹 for i=1:m for j=1:n st=[Ix2(i,j) Ixy(i,j);Ixy(i,j) Iy2(i,j)];%结构张量 K=det(st); % 行列式 H=trace(st);%求迹 if H(i,j)=255; end if H>50 &&abs(K)*10^(-9) I(i,j)=100; ...
  • 根据结构张量能区分图像的平坦区域、边缘区域与角点区域。此算法也算是计算机科学最重要的32个算法之一了。链接的文章中此算法名称为Strukturtensor算法,不过我搜索了一下,Strukturtensor这个单词好像是德语,翻译...
  • 1-1 张量数据结构

    2021-07-06 20:13:59
    张量:即Tensorflow的基本数据结构张量(Tensor)即多维数组 计算图:TensorFlow的所有计算都会被转化为计算图上的节点 #1. 张量 前面已经介绍过,张量即多维数组。 标量为0维张量,向量为1维张量,矩阵为2维张量...
  • TensorFlow程序 = 张量数据结构 + 计算图算法语言 TensorFlow中的数值类型依据维度数,可以划分为标量(Scalar)、向量(Vector)、矩阵(Matrix)、张量(Tensor)。但是在TensorFlow中为了表达方便,一般把标量、向量、...
  • 张量 一、张量的轴、阶和形状 张量是机器学习程序中的数字容器,本质上就是各种不同维度的数组,我们把张量...因此把Numpy数学函数库里面的数组用好,就可以搞定机器学习里面的数据结构。 二、标量——0D(阶)张量
  • 张量

    2021-03-17 19:07:05
    张量是神经网络中的最常用的数据结构,可以理解为是一个数据容器。 张量里面可以装数字,也可以装字符,但是不能装字符串,因为每个张量单元的内存预设是一样大的。 关键属性 轴的个数(阶,rank) 张量是矩阵向任意...
  • 张量乘法和超对称张量乘法张量内积张量乘以矩阵张量克罗内克积(KronerckerproductKronercker productKronerckerproduct)张量HadamardHadamardHadamard积Khatri−RaoKhatri-RaoKhatri−Rao积(超)对称和(超)对角 ...
  • Python的张量重构

    2021-07-15 09:33:45
    # .stack() 方法在列表中张量的基础上给列表顺序增加一个张量维度 tensor_list = [x1, x2] x3 = torch.stack(tensor_list) x4 = torch.cat(tensor_list) print('\n', x3, x4, sep='\n\n', end='\n\n') # 3,张量的...
  • 2-1 张量数据结构

    2021-01-15 18:35:40
    TensorFlow程序 = 张量数据结构 + 计算图算法语言 张量和计算图是 TensorFlow的核心概念。 Tensorflow的基本数据结构张量Tensor。张量即多维数组。Tensorflow的张量和numpy中的array很类似。 从行为特性来看,有两...
  • dstack也是一种粘合张量的方法,不过它也是有方向限定的,从这一点来说还是cat方法更自由一些。 其函数原型如下: torch.dstack(tensors, *, out=None) → Tensor 例程 >>> a = torch.tensor([1, 2, 3]) &...
  • TensorFlow 与 MXNet、PyTorch 很相似,上手速度很快(相比于...在 TensorFlow 中以 Tensor(张量)表示数据,即 DAG 的(实线)边,而虚线的边用来表示流程的控制关系。DAG 的节点表示数学操作符(即数学运算)。1 张量 tf...
  • PyTorch有各种组件: Torch有与NumPy类似的功能,但是支持GPU。 torch.autograd提供了用于实现任意标量值函数的...Multiprocessing是一个用于在多个张量之间共享内存的有用库。 Utils有加载数据的实用函数;它还有其
  • 张量的创建

    2021-02-23 10:31:11
    张量基本操作 构造 首先需要导入pytorch和numpy库 import torch import numpy as np 默认构造方法 我们可以看看张量的相关参数 torch.tensor(data, dtype=None, device=None, requires_grad=False, pin_memory=...
  • 原标题:深度学习初学者必读:张量究竟是什么?近段时间以来,张量与新的机器学习工具(如 TensorFlow)是非常热门的话题,在那些寻求应用和学习机器学习的人看来更是如此。但是,当你回溯历史,你会发现一些基础但...
  • Paper: Abts, Dennis, et al. “Think fast: a tensor streaming processor (TSP) for accelerating deep learning workloads.” 2020 ACM/...本文介绍了一种名为张量流处理器(TSP)的新型处理器体系结构,它利用了机器.
  • YDOOK AI : Pytorch:使用 tensor.size() 获取张量的数据结构 1. 源代码: import torch a = torch.tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]) print('a = ', a) print('a.dtype = ', a.dtype) print...
  • nbsp微积分矩阵的半张量积_一个便捷的新工具.pdf11页本文档一共被下载:次,您可全文免费在线阅读后下载本文档。 下载提示1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不...
  • 陈天奇:内存张量结构DLPack的PythonAPI来了新智元2021-02-28 14:25:22【新智元导读】DLPack是一种开放的内存张量结构,用于在框架之间共享张量,近日,开发者陈天奇更新社交媒体详细介绍了为DLPack添加PythonAPI、...
  • 张量的定义及创建

    2020-12-22 15:27:00
    一.张量的定义 1.张量 张量是一个多维数组,是标量,向量,矩阵的...Variable数据类型结构如下图: data:被包装的Tensor数据 grad:data的梯度 grad_fn:创建Tensor的方法,如加法,乘法等,是自动求导的关键 requires_grad:
  • 多维张量的几何理解

    2021-02-13 20:24:32
    Tensor是Tensorflow中最基础的数据结构,常常翻译为张量,可以理解为n维数组或矩阵,相关函数: constant(value, dtype=None, shape=None, name='Const', verify_shape=False) 0、零维张量 import tensorflow as ...
  • YDOOK:Pytorch教程:复制已有的 tensor结构,生成随机张量 tensor rand_like tensor © YDOOK Jinwei Lin, shiye.work import torch import numpy as np data = [[1, 2],[3, 4], [5, 6]] n_data = np.array(data)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 28,542
精华内容 11,416
关键字:

结构张量

友情链接: JudgeStringtoNumber.zip