0

我正在尝试获取协方差图以计算其上的一些值。这是之前完成的工作;双相钢中带状组织的定量分析

只需阅读 2. 页,就足以理解该方法。

本文档中有一张图片用于说明该方法,如下所示: 协变函数

您可以看到作者在 plot 的示例中使用了一个图像,然后他们获得了该图。

这是我正在使用的图像,作为二进制图像: 我的形象

我只想通过使用我的图像来获得该图。

代码:

setwd(".../Project/R/Workspace/Task1")
library("EBImage", lib.loc="~/R/win-library/3.2")
img <- readImage(".../Project/Beispielbilder/example.jpg")
display(img,  title='Image')
M <- img_ithr
plot(cov(M),xlim=c(0,1), ylim=c(0,300))

感谢您的帮助和时间,人们。

4

1 回答 1

1

根据您的示例文件和论文中的描述,我想出了以下内容。

library("EBImage")

img <- readImage("https://i.stack.imgur.com/YMBQO.jpg")

## discard color channels by collapsing to grayscale, and binarize
bin <- channel(img, "gray") > .5

## function calculating the overlap between the original structure
## and the structure shifted by a vector v
C <- function(img, v) {
  sum(img & translate(img, v)) / prod(dim(img)[1:2]-v)
}

h <- 1:300

## horizontal
C_h <- sapply(h, function(h) C(bin, c(h, 0)))

## vertical
C_v <- sapply(h, function(h) C(bin, c(0, h)))

matplot(h, cbind(C_h, C_v), xlim = range(h), ylim = range(C_h, C_v),
         ylab = "C", col = c("red", "blue"), type = "l", lty = 1)

在此处输入图像描述

在两个垂直方向上分别测量协方差。不过,我不确定在论文的情节中如何考虑方向β 。

于 2016-11-15T15:12:09.393 回答