Interpolação de imagem de pixels aleatórios

Gostaria de fazer uma pergunta sobre a interpolação de imagem de canal único. O canal único é escolhido apenas por simplicidade, caso contrário, estou trabalhando em imagens de vários canais. Suponha que exista uma imagem de canal único com fundo preto puro (intensidade de pixel 0) na qual existem alguns pixels com valores de intensidade diferentes de zero. Eu quero aplicar um algoritmo de interpolação para preencher toda a área preta da imagem com valores interpolados provenientes dos pixels vizinhos de intensidade não nula.

Qual algoritmo de interpolação você recomendaria para uma interpolação suave aplicável a esse problema?

Como entradas, é claro que sabemos a localização desses pixels não pretos e sua intensidade. Mas a localização é um pouco aleatória (em uma linha pode ser 10 pixels, em outra linha apenas 8).