Say we have a image reconstruction filter $h:R\to\mathbb R$ defined on the raster space $[0,w]\times[0,h]$, where $w,h\in\mathbb N$ define the width and height of the image plane in pixels, respectively.

How is this $h$ related to the image reconstruction filter $\tilde h$ defined on the path space occuring in the path integral formula for the measurement of a pixel?

Asked differently: How is $\tilde h$ defined in terms of $h$?

Since $\tilde h$ only depends on the first two components of a path, we may clearly assume that $\tilde h$ is a function on $M^2\to\mathbb R$, where $M$ denotes the scene geometry. For simplicity, assume a pinhole camera with eye $x_0$ so that $\tilde h$ is a function $M\to\mathbb R$. I guess we may likewise consider it as a function of directions, i.e. as a function on the unit 2-sphere $S^2:=\{\omega\in\mathbb R^3:|\omega|=1\}$ or on the hemisphere $H^2:=\{\omega\in S^2:\omega_3>0\}$, corresponding to the front-facing directions (assuming camera space), if that's easier.

EDIT 1: I define the path space $(E,\mathcal E,\lambda)$ in the same way as Veach did in his seminal work: $$E_k:=M^{\{0,\:\ldots\:,\:k\}},\mathcal E_k:=\mathcal B(M)^{\otimes\{0,\:\ldots\:,\:k\}},\lambda_k:=\sigma_M^{\otimes\{0,\:\ldots\:,\:k\}}$$ for $k\in\mathbb N,$ where $\sigma_M$ denotes the surface measure on $M$, and $$E:=\bigcup_{k\in\mathbb N}E_k,\mathcal E:=\mathcal B(E),$$$$\lambda(B):=\sum_{k\in\mathbb N}\lambda_k(B\cap E_k)\;\;\;\text{for }B\in\mathcal E.$$ But, as noted before, we can restrict our attention to $(E_2,\mathcal E_2,\lambda_2)$ and, assuming a pinhole camera with the eye at the origin $0$, we're simply actually only dealing with $(M,\mathcal B(M),\sigma_M)$. Denoting the surface measure on the unit sphere by $\sigma_{S^2}$, I'll define the projected solid angle kernel to be $$\sigma_M^\perp(x,B):=\int_B\sigma_{S^2}({\rm d}\omega)|\langle\nu_M(x),\omega\rangle|\;\;\;\text{for }(x,B)\in M\times\mathcal B(S^2),$$ where $\langle\nu_M$ denotes the unit normal field on $M$. $\sigma_{S^2}$ and $\sigma_M$ are related by $$\int\sigma_M^\perp(x,{\rm d}\omega)f(\omega)=\int\sigma_M({\rm d}y)g(x\leftrightarrow y)f(\omega_{x\to y})\tag1$$ for all $x\in M$ and Borel measurable $f:S^2\to[0,\infty)$, where $$g(x\leftrightarrow y):=\left.\begin{cases}\displaystyle\frac{\left|\left\langle\nu_M(x),\omega_{x\to y}\right\rangle\right|\left|\left\langle\nu_M(y),\omega_{y\to x}\right\rangle\right|}{|x-y|^2}&\text{, if }y\text{ is visible from }x\\0&\text{,otherwise}\end{cases}\right\}$$ for $x,y\in M$ and $\omega_{x\to y}:=\pi(y-x)$, where $\pi$ denotes the projection of $\mathbb R^3\setminus\{0\}$ onto $S^2$.

EDIT 2: The image plane at $z=1$ in camera space is of the form $$I:=\left[-\frac w2,\frac w2\right)\times\left[-\frac h2,\frac h2\right)\times\{1\},$$ where $w,h>0$ are the width and height (in camera space) of the image plane, respectively. It's easy to see that a ray starting at $0$ (the camera position in camera space) with direction $\omega\in S^2$ has an intersection with the infinite extension $\mathbb R^2\times\{1\}$ of $I$ if and only if $\omega\in H^2$ and in that case the intersection is occurring at $\frac\omega{\omega_3}$.

  • $\begingroup$ I suggest explicitly writing out your convention for path space. For example: $X \in [0,1]^D$ is a nice convention (which allows all the integrals in the Neumann expansion to be in $[0,1]^{D_k}$). Your first vertex (the one on the film) is then simply $RSx_0 + o$, where $R$ and $S$ are respectively a rotation and scale matrix, and $o$ is one of the corners of the film. The remaining vertices are generated as usual. $\endgroup$ – lightxbulb Feb 25 at 12:05
  • $\begingroup$ @lightxbulb Please take note of my edit. $\endgroup$ – 0xbadf00d Feb 25 at 13:52
  • $\begingroup$ You do not have to overcomplicate the problem - it does not help. Having raster coordinates $(\xi, \eta)$, a filter $h : [-r_x, r_x] \times [-r_y, r_y] \rightarrow \mathbb{R}_{\geq 0}$, the film $\vec{S}(\xi,\eta) = \vec{o} + \xi \vec{e}_1 + \eta \vec{e}_2$, and pixel coordinates $(\xi_{i,j}, \eta_{i,j})$ we want to express $h$ in terms of the world coordinates of $(\xi, \eta)$: $(x, y, z) = \vec{S}(\xi, \eta)$. Then $h(\xi - \xi_{i,j}, \eta - \eta_{i,j})$ $= h(S^{-1}(x,y,z) - (\xi_{i,j}, \eta_{i,j}))$. Note that $S^{-1}$ is just a matrix multiply and a translation. $\endgroup$ – lightxbulb Feb 25 at 15:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.