Fix imageExtrapolation.
This commit is contained in:
@@ -30,24 +30,18 @@ Matrix Recon::imageExtrapolation(const Matrix& aImg, int aDim)
|
|||||||
|
|
||||||
if(!indexe.empty())
|
if(!indexe.empty())
|
||||||
{
|
{
|
||||||
Matrix result = aImg;
|
Matrix result = aImg;
|
||||||
std::vector<int> lowerZIndexe;
|
if(indexe[0] - 1 > 0)
|
||||||
for(int i=0; i<=indexe[0] - 1; ++i)
|
|
||||||
{
|
{
|
||||||
lowerZIndexe.push_back(i);
|
Matrix insert = repmat(aImg($,$,indexe[0]).toMatrix(), 1, 1, indexe[0]);
|
||||||
}
|
result.setBlock(2, 0, indexe[0] - 1, insert);
|
||||||
for(int i=0; i<lowerZIndexe.size(); ++i)
|
|
||||||
{
|
|
||||||
Matrix insert = repmat(aImg($,$,indexe[0]).toMatrix(), 1, 1, sum(zIndexZero.block(0, 0, *lowerZIndexe.end()), FunctionDirection::All)[0]);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// lowerZIndexe.clear();
|
if(*(indexe.end()-1) + 1 < zSize-1)
|
||||||
// for(size_t i=0; i<=*indexe.end(); ++i)
|
{
|
||||||
// {
|
Matrix insert = repmat(aImg($,$,*(indexe.end() - 1)).toMatrix(), 1, 1, zSize - *(indexe.end() - 1) - 1);
|
||||||
// lowerZIndexe.push_back(i);
|
result.setBlock(2, *(indexe.end()-1) + 1, zSize-1, insert);
|
||||||
// }
|
}
|
||||||
Matrix insert = repmat(aImg($,$,*(indexe.end() - 1)).toMatrix(), 1, 1, sum(zIndexZero, FunctionDirection::All)[0]);
|
|
||||||
result.setBlock(2, *(indexe.end()-1) + 1, zSize-1, insert);
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user