Tag: image processing

如何将灰度图像以matrix或dataframe的forms转换为相应的像素值(0-1)?

在R编程中,我想将灰度图像以matrix或数据框的forms转换为相应的像素值,如果需要,我也希望将数据存储在excel文件中。这个转换过程将帮助我实现和分析聚类方法以每个像素的强度的forms显示在图像上。 许多人提出了biOps封装,用于这种灰度图像到像素matrix的转换,但不幸的是这个软件包不再受R的支持(link:cran.r-project.org/web/packages/biOps/index.html)。 我也尝试了EBImage包,当我从摘要使用“imageData()”提取灰度图像的像素值,但值存储为三维值的数组,但我想使matrix或dataframe,其中每个像素对应一个相应的值为0到1.可以build议R中的任何方法。 作为参考我共享MRI扫描图像的excel文件。 MRI扫描图像:这是我希望我的图像被转换的方式 你可以在这里下载excel文件 ( https://d37djvu3ytnwxt.cloudfront.net/assets/courseware/v1/e4d303da53c93dfaca745ad1236e7d53/asset-v1:MITx+15.071x_3+1T2016+type@asset+block/tumor.csv )

绘制直方图(更改轴)

例如matrixA有n×2matrix。第一列是一些索引,第二列是直方图。我只想将非零直方图可视化,所以我过滤了A并删除了直方图为零的索引。 我用 bar(A(:,1),A(:,2)) 我没有使用excel。 我怎样才能在Excel中绘制? 这是我的数据(所以我只想显示这个matrix的元素,但是如图所示,它显示的所有索引从零到x轴结束,我只想显示非零值在x轴的索引) 1 0.0573770000000000 2 0.622951000000000 3 0.0819672000000000 4 0.0491803000000000 5 0.0409836000000000 6 0.00819672000000000 7 0.00819672000000000 8 0.0163934000000000 10 0.00819672000000000 12 0.00819672000000000 14 0.00819672000000000 19 0.0163934000000000 34 0.00819672000000000 50 0.00819672000000000 54 0.00819672000000000 62 0.00819672000000000 175 0.00819672000000000 410 0.00819672000000000 1178 0.00819672000000000 1193 0.00819672000000000 1669 0.00819672000000000 它有非常糟糕的visualisation.It可能在matlab或我应该使用其他软件? Roney的结果回答了我的数据。 (我想从我的数据下面的每个栏下的实际标签在X轴。) 谢谢

如何用傅立叶变换将数组中的数字输出到Excel文件中的单行

我想要将image processing的数字结果输出到.xls文件中,并在单元格中精确地在单元格中进行输出,请问有人build议使用哪个Python模块以及要添加什么代码? 换句话说,如何从数组中排列数字并将其精确地放置在Excel单元格中? Code fragment: def fouriertransform(self): #function for FT computation for filename in glob.iglob ('*.tif'): imgfourier = mahotas.imread (filename) #read the image arrayfourier = numpy.array([imgfourier])#make an array # Take the fourier transform of the image. F1 = fftpack.fft2(imgfourier) # Now shift so that low spatial frequencies are in the center. F2 = fftpack.fftshift(F1) # […]

年月日date的可疑符号

我正在学习使用imageplot 。 他们的文件指出: “Year_month”,“Label_Place”和“Title”列是元数据的例子,其经常伴随图像。 第一个是艺术史家用他的信件确定的每幅梵高绘画的年月。 为了达到这一列中的值,我们使用Excel将月份数字1-12转换为十进制数字1-10,然后将这些转换后的数字加上年份。 (为了使这个过程更加清晰,我们在“年”和“月”栏分别提供年份和月份。)“Label_Place”列包含艺术家居住和工作的关键地点的名称; 这五个标签对应于讨论和展示梵高作品时使用的典型类别(例如,文森特梵高博物馆也用相同的五个时期概述了艺术家的生涯)。 下面是这个奇怪的Year_Month符号的例子: +————+——+——-+ | Year_Month | Year | Month | +————+——+——-+ | 1881.834 | 1881 | 11 | | 1881.834 | 1881 | 11 | | 1881.834 | 1881 | 11 | | 1882.5838 | 1882 | 8 | | 1882.5838 | 1882 | 8 | | 1882.5838 […]

jXLS jx:image以java.lang.IllegalArgumentException结尾:imgBean值必须包含图像字节

我想用jXLS 2.2.3将图像放在XLS文件模板中 XLS模板定义如下: 单元格A1,添加注释:jx:area(lastCell =“L10”) 单元格A10,添加评论:jx:each(items =“rows”var =“r”lastCell =“L10”) 单元格D10,添加评论:jx:image(imgBean =“r.barcodeJpgImage”imageType =“JPEG”lastCell =“L10”) 当我执行代码时: ByteArrayOutputStream fos = new ByteArrayOutputStream(); //fis is template file input stream, fos is the output Transformer transformer = TransformerFactory.createTransformer(fis, fos); AreaBuilder areaBuilder = new XlsCommentAreaBuilder(transformer); List<Area> xlsAreaList = areaBuilder.build(); Area xlsArea = xlsAreaList.get(0); Context context = new Context(); for (Map.Entry<String, Object> […]

如果区域已经填满,请阻止修补

这对我的代码来说是一个相当艰巨的挑战。 首先,我放在这里的代码是不能运行的,因为我使用了一个Excel工作表(但是如果有人想要使用我的代码,我很乐意给你发邮件)。 我所拥有的是一张Excel数据表,其中包含我所取得的显微图像中的横截面纤维数据。 信息基本上是:部分的location , area ,旋转angle 。 从这个angular度我计算了Phi和Gamma。 之后,我使用散射函数为每个Phiangular度值绘制不同颜色的点。 我在10度的范围内使用了一个不变的颜色。 这给了我一个像这样的图片: 现在我的目标是计算每个同质区域的面积。 所以我寻找一种方法来让我们说-10 + 10区域内的所有点(我现在正在做20度,但之后会做10点)。 我用了一下,我得到了这样的图片: 白色对应的点在我select的范围内。 之后,我使用MATLAB中的工具箱将每个点转换为一个像素。 所以我会得到一个白色像素负载的黑色背景,然后我使用imdilate做圆圈,填充洞,并用特定的颜色隔离每个区域。 最后我使用函数边界和补丁来创build每个边界并填充颜色。 我得到这样的图片: 这是我想要的,我可以得到每个地区的面积和总面积(我用一个门槛来放弃小面积)。 然后我为每个区域运行代码几次,然后使用imfuse将它们放回到一起,看看它是什么样的。 问题是,它们重叠了很多,这是因为我的数据有一些错误,所以一些蓝色的点会变成红色等等。 所以我想运行一次代码,然后当我用另一个范围重新运行它时,它会做同样的事情,但是在之前已经绘制了某些东西时没有考虑到这个值。 我试图这样做,运行一次后,保存matrixbw4,并添加一个条件,当绘制黑白图片,说如果披是在我的范围内,这里没有白色,那么你可以把白色,否则它是黑色的。 但似乎没有工作。 我知道这是一个相当复杂的事情来解释,但我会很感激任何想法,并通过电子邮件或其他方式开放聊天。 我现在把完整的代码,我可以发送给你我的Excel表,如果你想在你的计算机上运行,​​并为自己看。 clearvars -except data colheaders bw4 close all clc %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% CHANGE DATA FOR EACH SAMPLE %%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% cd 'C:\Users\dkarta\Desktop\Sample 12\12.6' data=xlsread('Sample12_6res.xlsx'); cd 'C:\Users\dkarta\Documents\MATLAB' %data=Sample121res; […]