我尝试确定并计算图像中的WBC数量,我可以使用下面的代码来确定它。但是,当我尝试标记检测到的WBC时,它会标记出圆圈外的数字。结果如下。
你能告诉我这里缺少什么吗?export default class Table extends React.Component{
constructor(props){
super(props)
this.arr = [
{id:1, content:"content1"},
{id:2, content:"content2"},
{id:3, content:"content3"}
]
}
render() {
return (
<ul>
{this.arr.map((element, index) => { return (<TableLine
data={element}
onClick={this.props.onClick}
/>)
})}
</ul>
)
}
}
class TableLine extends React.Component{
handleClick = () => {
this.props.onClick(this.props.data.id);
}
render() {
return(
<li
onClick={this.handleClick}>
{this.props.data.content}
</li>
)
}
}
答案 0 :(得分:3)
你有点困惑。
您的方法是:
1)计算圆圈,并绘制它们
2)使用完全不同的方法计算圆圈,并在其中放置标签
使用第一种方法写出标签的结果会不会有意义?你有一行代码说:
[centers, radii, metric] = imfindcircles(rgb,[9 24],'ObjectPolarity','dark','Sensitivity',0.86,'Method','twostage');
注意,那里写的第一件事是centers
,它暗示这是一个很好用的东西,情节中心!
只需删除所有二进制图像内容并写入:
clc;
clear all;
close all;
rgb = imread('https://i.stack.imgur.com/WXpjH.jpg');
figure;
imshow(rgb); hold on
[centers, radii, metric] = imfindcircles(rgb,[9 24],'ObjectPolarity','dark','Sensitivity',0.86,'Method','twostage');
m = viscircles(centers,radii);
[a,b]=size(centers);
disp(a);
disp(b);
% s = regionprops(L, 'Centroid');
for k = 1:size(centers,1)
c = centers(k,:);
text(c(1), c(2), sprintf('%d', k), ...
'Color', 'w', ...
'HorizontalAlignment', 'center', ...
'VerticalAlignment', 'middle');
end
hold off