macros - imageJ 上的宏,循环不会移动到下一个 ROI
问题描述
我正在尝试裁剪图像中的部分,然后对所有部分进行平均。我在 imageJ 上回收我以前的宏。以前的宏通过在 ROI 列表中执行循环来很好地工作。但是,对于这个,我不明白为什么循环不会移动到列表中的下一个 ROI。相反,我得到了 N 次作为列表中 ROI 数量的工作,但宏使用第一个 ROI 信息。这是我的宏:
runMacro("OpenROI");
rename("AA");
selectWindow("AA");
n=roiManager("count");
for(i=0;i<n;i++){
roiManager("select",i);
run("Copy");
run("Internal Clipboard");
rename(i);
}
selectWindow("AA");
run("Close");
run("Images to Stack", "name=Stack title=[] use");
run("Z Project...", "projection=[Average Intensity]");
有人能抓住我失去了什么吗?谢谢
解决方案
我找到了一个解决方案,这条线:
selectWindow("AA");
必须在循环内才能在图像上设置 ROI。完整代码如下:
runMacro("OpenROI");
rename("AA");
n=roiManager("count");
for(i=0;i <n; i++){
selectWindow("AA");
roiManager("select",i);
run("Copy");
run("Internal Clipboard");
rename(i);
}
selectWindow("AA");
run("Close");
run("Images to Stack", "name=Stack title=[] use");
run("Z Project...", "projection=[Average Intensity]");
推荐阅读
- wpf - 为什么带有一个按钮的 WPF CommandBinding 会影响另一个按钮?
- sql - 如何在 CLOB 中搜索字符串并在 Oracle SQL 中显示其后的值?
- here-api - 示例邮政编码的 Here API 的空结果
- python - Python:如何在另一个函数中包含一个函数?
- java - 如何使用 Zxing 更好地读取数据矩阵?
- reactjs - 未处理的拒绝(错误):帖子不能为空
- google-bigquery - Union All 的列数不匹配
- python - How to perform on global dataframe in the target function of multiprocessing in python?
- azure - 从公共天蓝色函数调用私有函数?
- php - 具有 3 个表的复杂选择