Let
$$
\mathbf{A} = \left[ \mathrm{vec}(\mathbf{I}_1), \mathrm{vec}(\mathbf{I}_2), \dots, \mathrm{vec}(\mathbf{I}_K) \right] \in \mathbb{C}^{MN \times K},
$$
then the problem, if I understand things correctly, that you want to solve is
$$
\mathbf{w}^\ast = \arg \min_\mathbf{w} \mathrm{TV}( \mathbf{Aw} ) \,\,\,\, \mathrm{s.t.} \,\,\,\, \mathbf{1}^\mathrm{T} \mathbf{w} = 1.
$$
The above can be reformulated as
$$
\mathbf{w}^\ast = \arg \min_\mathbf{w} \Vert \mathbf{DAw} \Vert_1 + \lambda \cdot \Vert \mathbf{B} \mathbf{w} - \mathbf{y} \Vert_2,
$$
where $\mathbf{D}$ is the first-order difference operator and $\lambda \in \mathbb{R}$ is user-chosen weight based on your tolerance for how close $\mathbf{Bw}$ must match $\mathbf{y}$. For your case, $\mathbf{B}$ is just a vector of all ones and $\mathbf{y}$ is just a scalar with value one.
The above is called a least-mixed norm problem and you can find several methods for solving it online.
However, it just occurred to me that you have the added constraint that $w_i \in [0,1]$, which might not be handled in anything you find. I am going to leave this answer anyways, since you may be able augment a least-mixed norm solver with a step that projects the current estimate onto the feasible set on each iteration.