Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
otb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
273
Issues
273
List
Boards
Labels
Service Desk
Milestones
Merge Requests
8
Merge Requests
8
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Incidents
Environments
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Main Repositories
otb
Commits
6880d809
Commit
6880d809
authored
Jan 04, 2012
by
Emmanuel Christophe
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ENH: minor fix in tile streaming
parent
53081125
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
18 additions
and
18 deletions
+18
-18
Code/Common/otbImageRegionAdaptativeSplitter.h
Code/Common/otbImageRegionAdaptativeSplitter.h
+7
-7
Code/Common/otbImageRegionAdaptativeSplitter.txx
Code/Common/otbImageRegionAdaptativeSplitter.txx
+7
-7
Code/Common/otbRAMDrivenAdaptativeStreamingManager.txx
Code/Common/otbRAMDrivenAdaptativeStreamingManager.txx
+4
-4
No files found.
Code/Common/otbImageRegionAdaptativeSplitter.h
View file @
6880d809
...
...
@@ -35,9 +35,9 @@ namespace otb
*
* This region splitter tries to adapt to the tiling scheme of the
* input image using the TileHint parameter. It aims at
* synchronizing the streaming with the tiling scheme
so as to avoid
*
reading the same tile multiple times in the standard pixel-based
* processing scheme.
* synchronizing the streaming with the tiling scheme
(in a JPEG
*
2000 situation for example) so as to avoid reading the same tile
*
multiple times in the standard pixel-based
processing scheme.
*
* If the requested number of splits is lower than the number of
* tiles in the image region, then the splitter will derive splits
...
...
@@ -48,7 +48,7 @@ namespace otb
* changing to a new tile, ensuring the former tile will be only
* read once.
*
* If the TileHin
g
is empty, or is VImageDimension is not 2, the
* If the TileHin
t
is empty, or is VImageDimension is not 2, the
* splitter falls back to the behaviour of
* otb::ImageRegionSquareTileSplitter.
*
...
...
@@ -63,7 +63,7 @@ class ITK_EXPORT ImageRegionAdaptativeSplitter : public itk::ImageRegionSplitter
{
public:
/** Standard class typedefs. */
typedef
ImageRegionAdaptativeSplitter
Self
;
typedef
ImageRegionAdaptativeSplitter
Self
;
typedef
itk
::
ImageRegionSplitter
<
VImageDimension
>
Superclass
;
typedef
itk
::
SmartPointer
<
Self
>
Pointer
;
typedef
itk
::
SmartPointer
<
const
Self
>
ConstPointer
;
...
...
@@ -82,7 +82,7 @@ public:
{
return
VImageDimension
;
}
/** Index typedef support. An index is used to access pixel values. */
typedef
itk
::
Index
<
VImageDimension
>
IndexType
;
typedef
typename
IndexType
::
IndexValueType
IndexValueType
;
...
...
@@ -101,7 +101,7 @@ public:
/** Get the TileHint parameter */
itkGetConstReferenceMacro
(
TileHint
,
SizeType
);
/** Set the ImageRegion parameter */
itkSetMacro
(
ImageRegion
,
RegionType
);
...
...
Code/Common/otbImageRegionAdaptativeSplitter.txx
View file @
6880d809
...
...
@@ -99,7 +99,7 @@ ImageRegionAdaptativeSplitter<VImageDimension>
m_IsUpToDate = true;
return;
}
// Now we can handle the case where we have a tile hint and a
// non-trivial requested number of splits
SizeType tilesPerDim, splitsPerDim;
...
...
@@ -115,7 +115,7 @@ ImageRegionAdaptativeSplitter<VImageDimension>
// Try to group splits
SizeType groupTiles;
groupTiles.Fill(1);
unsigned int i=0;
// TODO: this should not fall in infinite loop, but add more
...
...
@@ -170,7 +170,7 @@ ImageRegionAdaptativeSplitter<VImageDimension>
{
SizeType divideTiles;
divideTiles.Fill(1);
unsigned int i = 1;
while(totalTiles * (divideTiles[0] * divideTiles[1]) < m_RequestedNumberOfSplits)
...
...
@@ -199,15 +199,15 @@ ImageRegionAdaptativeSplitter<VImageDimension>
// Build the split
RegionType newSplit;
IndexType newSplitIndex;
newSplitIndex[0] = tilex * m_TileHint[0] + divx * splitSize[0];
newSplitIndex[1] = tiley * m_TileHint[1] + divy * splitSize[1];
newSplit.SetIndex(newSplitIndex);
newSplit.SetSize(splitSize);
newSplit.Crop(m_ImageRegion);
m_StreamVector.push_back(newSplit);
}
}
...
...
Code/Common/otbRAMDrivenAdaptativeStreamingManager.txx
View file @
6880d809
...
...
@@ -14,7 +14,7 @@
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notices for more information.
=========================================================================*/
=========================================================================*/
#ifndef __otbRAMDrivenAdaptativeStreamingManager_txx
#define __otbRAMDrivenAdaptativeStreamingManager_txx
...
...
@@ -60,12 +60,13 @@ RAMDrivenAdaptativeStreamingManager<TImage>::PrepareStreaming( itk::DataObject *
tileHint[0] = tileHintX;
tileHint[1] = tileHintY;
typename otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::Pointer splitter = otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::New();
typename otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::Pointer splitter =
otb::ImageRegionAdaptativeSplitter<itkGetStaticConstMacro(ImageDimension)>::New();
splitter->SetTileHint(tileHint);
this->m_Splitter = splitter;
this->m_ComputedNumberOfSplits = this->m_Splitter->GetNumberOfSplits(region, nbDivisions);
otbMsgDevMacro(<< "Number of split : " << this->m_ComputedNumberOfSplits)
this->m_Region = region;
...
...
@@ -74,4 +75,3 @@ RAMDrivenAdaptativeStreamingManager<TImage>::PrepareStreaming( itk::DataObject *
} // End namespace otb
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment