Eu tenho que conectar contornos próximos em uma imagem com base na distância entre eles, que especifica se os contornos devem ser conectados.
Agora, já existe uma pergunta sobre o mesmo problema aqui /programming/8973017/opencv-c-obj-c-connect-nearby-contours, mas aqui ele mescla todos os contornos em um único. Isso eu não quero. Eu não acho que exista alguma função no opencv para isso, mas você pode sugerir um algoritmo para isso. Minha aplicação é assim:
Estou detectando mãos, então usei um algoritmo de detecção de pele para determiná-las, mas como minha pele não é branca e talvez por causa de condições de iluminação, em algum momento o contorno quebra no cotovelo. Então, eu quero que os contornos próximos sejam conectados, mas não todos (porque ambas as minhas mãos estarão lá em contornos.) (Por mãos, quero dizer do ombro à palma da mão.)
Além disso, acho que, ao usar alguma detecção de borda, vou obter os limites das minhas mãos e detectar se parte desse adesivo dentro desse limite é detectado como pele, então toda a região dentro desse limite será detectada como pele, mas não tenho certeza de como fazer isso parte.
Qualquer ajuda será apreciada. desde já, obrigado
Imagem de exemplo:
Nesta imagem, quero conectar pontos (8 conectividade) com menos de 40 pixels de distância, para que eu ponha minha mão esquerda em um único contorno
Meu objetivo é obter apenas o contorno da mão (não me importo com nenhuma outra região)