Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 调查结果;圆点;或低对比度图像中的焦点_Matlab_Image Processing - Fatal编程技术网

Matlab 调查结果;圆点;或低对比度图像中的焦点

Matlab 调查结果;圆点;或低对比度图像中的焦点,matlab,image-processing,Matlab,Image Processing,我用抗体染色细胞,我对计算每个细胞的病灶或“点”的数量感兴趣。下图来自频道1 代表细胞核,只有这个盘状物体内的区域才有意义 下图,用于与上图相同的视图,但用于一个单独的通道,该通道会染色小的盘状区域或“点” 我希望你们能看到点,一些高强度的,一些低强度的。我试图用matlab(图像处理工具箱)计算这些,但我没有成功 这就是我目前所拥有的 filenameDAPI='http://i.stack.imgur.com/urJ3W.png'; DAPI=imread(filenameDAPI);

我用抗体染色细胞,我对计算每个细胞的病灶或“点”的数量感兴趣。下图来自频道1 代表细胞核,只有这个盘状物体内的区域才有意义

下图,用于与上图相同的视图,但用于一个单独的通道,该通道会染色小的盘状区域或“点”

我希望你们能看到点,一些高强度的,一些低强度的。我试图用matlab(图像处理工具箱)计算这些,但我没有成功

这就是我目前所拥有的

 filenameDAPI='http://i.stack.imgur.com/urJ3W.png';
 DAPI=imread(filenameDAPI); % nuclei
 nuclei_bin=imfill(im2bw(DAPI,graythresh(DAPI)),'holes');
 nuclei_bin=bwareaopen(nuclei_bin,2000); % filter out small regions
 filenameTRITC='http://i.stack.imgur.com/Cu4He.jpg';

 TRITC=imread('http://i.stack.imgur.com/Cu4He.jpg'); % dots

 Th=graythresh(TRITC); % threshold that finds nuclei
 Th2=graythresh(TRITC(TRITC>Th)); % threshold that finds foci
 FOCI=im2bw(TRITC,Th2);

 % now filter FOCI by size
 minArea=2; maxArea=200; % threshold to remove spurious foci
 FOCI_labeled=bwlabel(FOCI,8);
 FOCI_props=regionprops(FOCI_labeled,TRITC,'Area'); 
 A=[FOCI_props.Area];
 keepIndices=find(A >= minArea & A <= maxArea);
 FOCI_mask=ismember(FOCI_labeled,keepIndices);
 FOCIfiltered=FOCI.*FOCI_mask; 

 outline_FOCI=bwperim(FOCIfiltered);
 overlay_FOCI=imoverlay(TRITC,outline_FOCI,[1 .1 .3]);

 subplot(2,2,1); imshow(TRITC); 
 subplot(2,2,2); imhist(TRITC)
 subplot(2,2,3); imshow(FOCIfiltered);
 subplot(2,2,4); imshow(overlay_FOCI)
filenameDAPI='1〕http://i.stack.imgur.com/urJ3W.png';
DAPI=imread(filenameDAPI);%核
原子核_bin=imfill(im2bw(DAPI,灰度阈值(DAPI)),“空穴”);
Nucleus_-bin=BWAREOPEN(Nucleus_-bin,2000);%滤除小区域
filenametrict='1〕http://i.stack.imgur.com/Cu4He.jpg';
TRITC=imread('http://i.stack.imgur.com/Cu4He.jpg'); % 点
Th=灰度阈值(TRITC);%找到原子核的阈值
Th2=灰度阈值(TRITC(TRITC>Th));%找到焦点的阈值
FOCI=im2bw(TRITC,Th2);
%现在按大小过滤焦点
minArea=2;最大面积=200;%去除假病灶的阈值
FOCI_label=bwlab(FOCI,8);
FOCI_props=区域props(FOCI_标签,TRITC,“区域”);
A=[FOCI_props.Area];

keepIndices=find(A>=minArea&A我为您编写了一个简单的局部最大值过滤器(3X3区域):

filenametrict='C'http://i.stack.imgur.com/Cu4He.jpg';
TRITC=imread('http://i.stack.imgur.com/Cu4He.jpg“);%点
TI=TRITC;
TRITC=双(TRITC);
TRITC=TRITC.*(TRITC>100);
TRITC=TRITC.*(TRITCTRITC(x(i),y(i))
flag=0;
打破
结束
结束
结束
如果标志==1
px=[pxy(i)];py=[pyx(i)];
结束
结束
图形
imagesc(TI);
等等
绘图(px,py,'r.)
我选择了一个区域,放大显示结果:

与列侬310完全一样,Matlab有一些工具可以快速找到局部极值

im = imread('');
% Threshold, values under it are not accepted as extrema.
thresh = 120;
% Region of interest to determine an extrema in. 
roi = 5;
% Gray scale dilation to find local maxima
local_extr = ordfilt2(im, roi^2, ones(roi)); 
% Get local maxima and reject candidates below a threshold
result = (im == local_extr) & (im > thresh);
% Get indices of extrema
[r, c] = find(result);
% Show them
figure;imshow(im, []); hold on;
plot(c, r, 'ro');

im = imread('');
% Threshold, values under it are not accepted as extrema.
thresh = 120;
% Region of interest to determine an extrema in. 
roi = 5;
% Gray scale dilation to find local maxima
local_extr = ordfilt2(im, roi^2, ones(roi)); 
% Get local maxima and reject candidates below a threshold
result = (im == local_extr) & (im > thresh);
% Get indices of extrema
[r, c] = find(result);
% Show them
figure;imshow(im, []); hold on;
plot(c, r, 'ro');