/ / Przekazywanie zmiennej do polecenia ImageJ MIJI z MATLAB - java, matlab, imagej

Przekazanie zmiennej do komendy ImageJ MIJI z MATLAB - java, matlab, imagej

Próbuję użyć interfejsu MATLAB ImageJ(Miji), aby uruchomić blok poleceń, ale mam trudności z przekazaniem zmiennych do opcji makropolecenia. Próbuję załadować stos .tif obrazów i podzielić je na mniejsze stosy za pomocą polecenia duplikatu programu ImageJ.

Ze strony ImageJ dla budowniczego makr stwierdza:;

przekazuj zmienne do komend wywoływanych za pomocą metody run (), dodając "i" nazwy zmiennych.

Na przykład

values = 1-5
run("Duplicate...","duplicate range=&values")

Powinno to powielić stos obrazów w zakresie określonym przez wartości. Jednak przy tłumaczeniu tego na wtyczkę MATLABs MIJI w następujący sposób;

MIJ.run("Duplicate...","duplicate range=&values")

To nie działa i tylko powiela cały stos obrazu. Łamanie łańcucha "" powoduje zgłoszenie nieoczekiwanego błędu operatora MATLAB.

Podjęto próbę zapisania wartości zakresu jako tekstu ciągu, jak również w macierzy.

Odpowiedzi:

0 dla odpowiedzi № 1

Spróbuj połączyć ciągi za pomocą jednego z nich Obsługiwane przez MATLAB techniki łączenia ciągów. Być może najłatwiej jest użyć nawiasów kwadratowych, takich jak:

MIJ.run("Duplicate...", ["duplicate range=" values])

0 dla odpowiedzi nr 2

Udało mi się to zrobić za pomocą sprintf

values = 1-5;
MIJ.run("Duplicate...",sprintf("duplicate range=%d",values));