Я написал небольшой макрос, который находит сферы на пространственно откалиброванном (Dicom-) изображении.Однажды найденный, он тянет много!линий и сохраняет профили яркости вдоль этих линий в CSV-файл.Пока это работает хорошо и быстро.Это фрагмент кода, который извлекает профили и сохраняет их:
for (i=0; i < 360; i++){
run("Clear Results");
angle = i*2*PI/360;
makeLine(xm,ym,(xm+(length*sin(angle))), (ym-(length*cos(angle))));
profile = getProfile();
for (j=0; j<profile.length; j++) {
setResult("Value", j, profile[j]);
}
updateResults;
saveAs("Results",path + "\\angle_"+i+".csv");
}
Моя проблема в том, что фактический масштаб не экспортируется.Я получаю что-то вроде этого:
1,3070.070
2,3069.000
3,3069.986
4,3053.646
но я хочу
0.4395 3070
0.8789 3070
1.3184 3070
1.7578 069.8994
И так далее.Я попытался немного изменить эту строку:
setResult("Value", j*xscale, profile[j]);
, но это не работает.Я также попытался построить профили, а затем прочитать и сохранить их.
for (i=0; i < 360; i++){
run("Clear Results");
angle = i*2*PI/360;
makeLine(xm,ym,(xm+(length*sin(angle))), (ym-(length*cos(angle))));
run ("Plot Profile");
Plot.getValues(xplot,yplot);
for (j=0; j< xplot.length; j++){
print (xplot[j],yplot [j]);
}
selectWindow("Log");
saveAs("Text",path + "\\angle_"+i+".csv");
print("\\Clear");
selectWindow("04");
}
(Извините, переключение окон все еще экспериментальное, а профили не закрываются ..)
Это работает впринцип, но это, конечно, медленно медленно.Так что мой вопрос ... Как извлечь не онлайн номера строк, а правильный масштаб в профиле?Спасибо всем большое!