How to determine the dimensions of the bias vector in a Convolutional layer (tensor flow)?
No.  The bias vector should indeed have the same dimensions as the output vector (not the dimensions of the input).  In a neural network, after summing the weights times the inputs, the bias is added pointwise, then you apply the activation function (e.g., ReLu).  The equation for a single neuron is something like

$$y = f(\sum_i c_i x_i + c_b)$$

where $x_1,\dots,x_n$ are the inputs, $c_1,\dots,c_n$ are the weights on the inputs, $c_b$ is the bias, and $f$ is the activation function.  Notice how we have one bias number per neuron, i.e., per output.  (This equation gets modified a bit for convolutional neural networks but the relevant part still remains the same: we have one bias value per output.)