Imaris Open - Discussion Forum

This is a community discussion space where Imaris is the key topic. This forum will offer guidance to new users, technical as well as application support. Users from sites with a valid Imaris Infinity subscription will receive priority – however, the fastest way to get to the Bitplane Technical and Application Support team will continue to be via Asia, EU or US support mailboxes. Every registered user can add items to the forum. Non-registered users can read the forum but cannot add/comment, etc. All ideas, questions, suggestions and comments are welcome.

Advanced Search
Thread Author
Max. Age of Thread
Number of Posts
Thread Rating
HomeHomeGetting Started...Getting Started...How to…How to…Saving movie files with timestamp and scale barSaving movie files with timestamp and scale bar
New Post
Saving movie files with timestamp and scale bar
 

Good afternoon,

I have datasets which consist of z-stacks taken every 30 seconds to produce a time lapse. They are displayed as a maximum intensity projection and I export them as movie files (.avi). To do this I am selecting File > Save As > Movie File. 

My question is how to save such files with a timestamp and scale bar.

I display the timestamp and scale bar on the image from the menu under File > Preferences > Display, but when I save the file they are not included.

The option to capture the image with a scale bar and timestamp using the screenshot option doesn't seem applicable as this captures only the frame currently displayed.

Is there a way of achieving a movie file with these elements on each frame of my timelapse?

Many thanks in advance.

(I am using Imaris x64 9.1.2)

 
Copy Post URL

A possible solution I can thought of is through Animation.The only difference is that you want to show MIP instead of whole z-stack. To do so, write a simple ImarisXT that replace the dataset by its MIP, then you can get the results you want.

 
Copy Post URL
function XT_RMD_mipStack(aImarisApplicationID)

% <CustomTools>

%       <Menu>

%        <Submenu name="XT_RMD">

%         <Item name="XT_RMD_mipStack" icon="Matlab">

%           <Command>MatlabXT::XT_RMD_mipStack(%i)</Command>

%         </Item>

%        </Submenu>

%      </Menu>

%       <SurpassTab>

%         <SurpassComponent name="bpSurfaces">

%           <Item name="XT_RMD_mipStack" icon="Matlab">

%             <Command>MatlabXT::XT_RMD_mipStack(%i)</Command>

%           </Item>

%         </SurpassComponent>

%       </SurpassTab>

%     </CustomTools>


if ~isa(aImarisApplicationID, 'Imaris.IApplicationPrxHelper')
if isequal(sum(cellfun(@(x) ~isempty(strfind(x,'ImarisLib.jar')),javaclasspath('-all'))),0)
javaaddpath ImarisLib.jar
end
vImarisLib = ImarisLib;
if ischar(aImarisApplicationID)
aImarisApplicationID = round(str2double(aImarisApplicationID));
end
vImarisApplication = vImarisLib.GetApplication(aImarisApplicationID);
else
vImarisApplication = aImarisApplicationID;
end
% fastRMD
vDataSet = vImarisApplication.GetDataSet;
aExtendMaxX = vDataSet.GetExtendMaxX;
aExtendMaxY = vDataSet.GetExtendMaxY;
aExtendMaxZ = vDataSet.GetExtendMaxZ;
aExtendMinX = vDataSet.GetExtendMinX;
aExtendMinY = vDataSet.GetExtendMinY;
aExtendMinZ = vDataSet.GetExtendMinZ;
aSizeX = vDataSet.GetSizeX;
aSizeY = vDataSet.GetSizeY;
aSizeZ = vDataSet.GetSizeZ;
aSizeC = vDataSet.GetSizeC;
aSizeT = vDataSet.GetSizeT;
aType = vDataSet.GetType;
aVersion = vImarisApplication.GetVersion;
Xvoxelspacing= (aExtendMaxX-aExtendMinX)/aSizeX;
Yvoxelspacing= (aExtendMaxY-aExtendMinY)/aSizeY;
Zvoxelspacing= (aExtendMaxZ-aExtendMinZ)/aSizeZ;
Mvoxelspacing = max([Xvoxelspacing,Yvoxelspacing,Zvoxelspacing]);
Nvoxelspacing = min([Xvoxelspacing,Yvoxelspacing,Zvoxelspacing]);

vDataSetNew = vImarisApplication.GetFactory.CreateDataSet;
vDataSetNew.Create(aType,aSizeX,aSizeY,1,aSizeC,aSizeT);
for vTime = 0 : aSizeT - 1
for vChannel = 0 : aSizeC - 1
% get
if strcmp(aType,'eTypeUInt8')
aBlock = vImarisApplication.GetDataSet.GetDataVolumeBytes(vChannel,vTime);
aBlock2 = uint8(zeros(size(aBlock)));
aBlock2(:) = typecast(aBlock(:),'uint8');
elseif strcmp(aType,'eTypeUInt16')
aBlock = vImarisApplication.GetDataSet.GetDataVolumeShorts(vChannel,vTime);
aBlock2 = uint16(zeros(size(aBlock)));
aBlock2(:) = typecast(aBlock(:),'uint16');
elseif strcmp(aType,'eTypeFloat')
aBlock2 = vImarisApplication.GetDataSet.GetDataVolumeFloats(vChannel,vTime);
end
% mip
aSlice = max(aBlock2,[],3);
% set
if strcmp(aType,'eTypeUInt8')
vDataSetNew.SetDataVolumeBytes(aSlice,vChannel,vTime)
elseif strcmp(aType,'eTypeUInt16')
vDataSetNew.SetDataVolumeShorts(aSlice,vChannel,vTime)
elseif strcmp(aType,'eTypeFloat')
vDataSetNew.SetDataVolumeFloats(aSlice,vChannel,vTime)
end
end
end
vImarisApplication.SetDataSet(vDataSetNew);
end
 
Copy Post URL
copy the above words to a text file, and save it as XT_RMD_mipStack.m at the path like "C:\Program Files\Bitplane\Imaris x64 7.7.2\XT\matlab", then restart imaris file and find the command at :
"image processing"--"XT_RMD"--"XT_RMD_mipStack", click it to get what you want.

You need to have Matlab installed.
 
Copy Post URL


Post URL:
casque beats pas cher casque beats by dre pas cher beats by dre pas cher beats by dre pas cher maillot foot pas cher maillot de foot pas cher maillot foot pas cher 2014 maillot de foot pas cher maillot foot pas cher maillot de foot pas cher maillot foot pas cher 2014 maillot de foot pas cher maillot foot pas cher 2014 maillot de foot pas chere maillot foot pas cher maillot de foot pas cher Ralph Lauren Homme Polo Manche Longue Ralph Lauren Polo Ralph Lauren Pas Cher Homme Polo Ralph Lauren Homme Pas Cher Ralph Lauren Soldes Ralph Lauren Big Pony Ralph Lauren Soldes Ralph Lauren Big Pony Ralph Lauren Soldes Ralph Lauren Big Pony Ralph Lauren Soldes Ralph Lauren Big Pony