comparison Framework/Toolbox/FiniteProjectiveCamera.h @ 735:c3bbb130abc4

removing dependencies in ImageBuffer3D
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 21 May 2019 16:15:06 +0200
parents b70e9be013e4
children fa5febe0f0c2
comparison
equal deleted inserted replaced
734:be3671662eec 735:c3bbb130abc4
21 21
22 #pragma once 22 #pragma once
23 23
24 #include "LinearAlgebra.h" 24 #include "LinearAlgebra.h"
25 #include "../Volumes/ImageBuffer3D.h" 25 #include "../Volumes/ImageBuffer3D.h"
26 #include "VolumeImageGeometry.h"
26 27
27 namespace OrthancStone 28 namespace OrthancStone
28 { 29 {
29 // Reference: "Multiple View Geometry in Computer Vision (2nd Edition)" 30 // Reference: "Multiple View Geometry in Computer Vision (2nd Edition)"
30 class FiniteProjectiveCamera : public boost::noncopyable 31 class FiniteProjectiveCamera : public boost::noncopyable
107 // Apply the camera to a 3D point "v" that is possibly at 108 // Apply the camera to a 3D point "v" that is possibly at
108 // infinity. The result is a 2D point in homogeneous coordinates. 109 // infinity. The result is a 2D point in homogeneous coordinates.
109 Vector ApplyGeneral(const Vector& v) const; 110 Vector ApplyGeneral(const Vector& v) const;
110 111
111 Orthanc::ImageAccessor* ApplyRaytracer(const ImageBuffer3D& source, 112 Orthanc::ImageAccessor* ApplyRaytracer(const ImageBuffer3D& source,
113 const VolumeImageGeometry& geometry,
112 Orthanc::PixelFormat targetFormat, 114 Orthanc::PixelFormat targetFormat,
113 unsigned int targetWidth, 115 unsigned int targetWidth,
114 unsigned int targetHeight, 116 unsigned int targetHeight,
115 bool mip) const; 117 bool mip) const;
116 }; 118 };