Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
B
BigDataViewer_Core_Extension
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
BioinformaticDataCompression
BigDataViewer_Core_Extension
Commits
60db00f4
Commit
60db00f4
authored
6 years ago
by
Tobias Pietzsch
Browse files
Options
Downloads
Patches
Plain Diff
ExportHugeImage
parent
4fca9985
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/test/java/bdv/export/ExportHugeImage.java
+105
-0
105 additions, 0 deletions
src/test/java/bdv/export/ExportHugeImage.java
with
105 additions
and
0 deletions
src/test/java/bdv/export/ExportHugeImage.java
0 → 100644
+
105
−
0
View file @
60db00f4
package
bdv.export
;
import
bdv.export.WriteSequenceToHdf5.AfterEachPlane
;
import
bdv.export.WriteSequenceToHdf5.LoopbackHeuristic
;
import
bdv.spimdata.SequenceDescriptionMinimal
;
import
java.io.File
;
import
java.util.Arrays
;
import
java.util.Collections
;
import
java.util.Map
;
import
mpicbg.spim.data.generic.sequence.BasicSetupImgLoader
;
import
mpicbg.spim.data.generic.sequence.BasicViewSetup
;
import
mpicbg.spim.data.generic.sequence.ImgLoaderHint
;
import
mpicbg.spim.data.generic.sequence.TypedBasicImgLoader
;
import
mpicbg.spim.data.sequence.FinalVoxelDimensions
;
import
mpicbg.spim.data.sequence.TimePoint
;
import
mpicbg.spim.data.sequence.TimePoints
;
import
mpicbg.spim.data.sequence.VoxelDimensions
;
import
net.imglib2.RandomAccessibleInterval
;
import
net.imglib2.img.array.ArrayImgs
;
import
net.imglib2.type.numeric.integer.UnsignedShortType
;
import
net.imglib2.util.Intervals
;
import
net.imglib2.util.Util
;
import
net.imglib2.view.Views
;
public
class
ExportHugeImage
{
private
final
File
hdf5File
=
new
File
(
"/Users/pietzsch/Desktop/huge.h5"
);
private
final
RandomAccessibleInterval
<
UnsignedShortType
>
input
;
public
ExportHugeImage
()
{
input
=
Views
.
interval
(
Views
.
extendZero
(
ArrayImgs
.
unsignedShorts
(
1
,
1
,
1
)
),
Intervals
.
createMinSize
(
0
,
0
,
0
,
10000
,
10000
,
10000
)
);
}
public
static
class
RAIImgLoader
<
T
>
implements
TypedBasicImgLoader
<
T
>
{
private
final
BasicSetupImgLoader
<
T
>
setupImgLoader
;
public
RAIImgLoader
(
final
RandomAccessibleInterval
<
T
>
rai
)
{
this
(
rai
,
Util
.
getTypeFromInterval
(
rai
)
);
}
public
RAIImgLoader
(
final
RandomAccessibleInterval
<
T
>
rai
,
final
T
type
)
{
setupImgLoader
=
new
BasicSetupImgLoader
<
T
>()
{
@Override
public
RandomAccessibleInterval
<
T
>
getImage
(
final
int
timepointId
,
final
ImgLoaderHint
...
hints
)
{
return
rai
;
}
@Override
public
T
getImageType
()
{
return
type
;
}
};
}
@Override
public
BasicSetupImgLoader
<
T
>
getSetupImgLoader
(
final
int
setupId
)
{
return
setupImgLoader
;
}
}
private
static
VoxelDimensions
defaultVoxelDimensions
(
int
numDimensions
)
{
double
[]
dimensions
=
new
double
[
numDimensions
];
Arrays
.
fill
(
dimensions
,
1.0
);
return
new
FinalVoxelDimensions
(
"px"
,
dimensions
);
}
public
void
run
()
{
final
String
name
=
"img"
;
final
RandomAccessibleInterval
<
UnsignedShortType
>
rai
=
input
;
final
VoxelDimensions
voxelSize
=
defaultVoxelDimensions
(
rai
.
numDimensions
()
);
final
BasicViewSetup
setup
=
new
BasicViewSetup
(
0
,
name
,
rai
,
voxelSize
);
final
Map
<
Integer
,
BasicViewSetup
>
setups
=
Collections
.
singletonMap
(
setup
.
getId
(),
setup
);
final
TimePoints
timepoints
=
new
TimePoints
(
Collections
.
singletonList
(
new
TimePoint
(
0
)
)
);
final
RAIImgLoader
<
UnsignedShortType
>
imgLoader
=
new
RAIImgLoader
<>(
rai
);
final
SequenceDescriptionMinimal
seq
=
new
SequenceDescriptionMinimal
(
timepoints
,
setups
,
imgLoader
,
null
);
final
Map
<
Integer
,
ExportMipmapInfo
>
perSetupExportMipmapInfo
=
Collections
.
singletonMap
(
setup
.
getId
(),
ProposeMipmaps
.
proposeMipmaps
(
setup
)
);
final
boolean
deflate
=
false
;
final
int
numCellCreatorThreads
=
10
;
final
ProgressWriterConsole
progressWriter
=
new
ProgressWriterConsole
();
final
LoopbackHeuristic
loopbackHeuristic
=
null
;
final
AfterEachPlane
afterEachPlane
=
null
;
WriteSequenceToHdf5
.
writeHdf5File
(
seq
,
perSetupExportMipmapInfo
,
deflate
,
hdf5File
,
loopbackHeuristic
,
afterEachPlane
,
numCellCreatorThreads
,
progressWriter
);
}
public
static
void
main
(
String
[]
args
)
{
new
ExportHugeImage
().
run
();
}
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment