You can convert any vector between body coordinates (x=forward, y=right, z=belly) and navigation coordinates (x=north, y=east, z=down) by multiplying it with the rotation matrix. For the inverse conversion, multiply the vector with the transposed rotation matrix.
By your problem description, you have a vector that points "up" in body coordinates and you want it in navigation coordinates, like this:
\begin{align}
\mathbf{v}_{body} &= \begin{bmatrix} 0\\ 0\\ -1\end{bmatrix} \\
\mathbf{v}_{navi} &= \mathbf{A} * \mathbf{v}_{body}
\end{align}
Construct the rotation matrix from Tait-Bryan angles (ϕ=roll, θ=pitch, ψ=heading) using:
\begin{align}\mathbf{A} = \mathbf{A}_Z\mathbf{A}_Y\mathbf{A}_X
\end{align}
with:
\begin{align}
\mathbf{A}_X &= \begin{bmatrix} 1 & 0 & 0\\ 0 & \cos\phi & -\sin\phi\\ 0 & \sin\phi & \cos\phi \end{bmatrix} \\[5px]
\mathbf{A}_Y &= \begin{bmatrix} \cos\theta & 0 & \sin\theta\\ 0 & 1 & 0\\ -\sin\theta & 0 & \cos\theta \end{bmatrix} \\[5px]
\mathbf{A}_Z &= \begin{bmatrix} \cos\psi & -\sin\psi & 0\\ \sin\psi & \cos\psi & 0\\ 0 & 0 & 1 \end{bmatrix}
\end{align}