A segmentação semântica é apenas um pleonasmo ou há uma diferença entre "segmentação semântica" e "segmentação"? Existe uma diferença para "rotulagem de cena" ou "análise de cena"?
Qual é a diferença entre segmentação em nível de pixel e pixelwise?
(Pergunta lateral: quando você tem esse tipo de anotação baseada em pixels, você obtém detecção de objetos gratuitamente ou ainda há algo a fazer?)
Por favor, forneça uma fonte para suas definições.
Fontes que usam "segmentação semântica"
- Jonathan Long, Evan Shelhamer, Trevor Darrell: Redes Totalmente Convolucionais para Segmentação Semântica . CVPR, 2015 e PAMI, 2016
- Hong, Seunghoon, Hyeonwoo Noh e Bohyung Han: "Disoupled Deep Neural Network for Semi-supervisioned Semantic Segmentation." pré-impressão arXiv arXiv: 1506.04924 , 2015.
- V. Lempitsky, A. Vedaldi e A. Zisserman: Um modelo de pilão para segmentação semântica. In Advances in Neural Information Processing Systems, 2011.
Fontes que usam "rotulagem de cena"
- Clement Farabet, Camille Couprie, Laurent Najman, Yann LeCun: Aprendendo Recursos Hierárquicos para Rotulagem de Cena . Em Pattern Analysis and Machine Intelligence, 2013.
Fonte que usa "nível de pixel"
- Pinheiro, Pedro O. e Ronan Collobert: "From Image-level to Pixel-level Labeling with Convolutional Networks." Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2015. (ver http://arxiv.org/abs/1411.6228 )
Fonte que usa "pixelwise"
- Li, Hongsheng, Rui Zhao e Xiaogang Wang: "Propagação para frente e para trás altamente eficiente de redes neurais convolucionais para classificação pixelwise." pré-impressão de arXiv arXiv: 1412.4526 , 2014.
Google Ngrams
"Segmentação semântica" parece ser mais usada recentemente do que "rotulagem de cena"
image-processing
computer-vision
object-detection
image-segmentation
semantic-segmentation
Martin Thoma
fonte
fonte
Respostas:
"segmentação" é a partição de uma imagem em várias partes "coerentes", mas sem qualquer tentativa de compreender o que essas partes representam. Um dos trabalhos mais famosos (mas definitivamente não o primeiro) é Shi e Malik "Normalized Cuts and Image Segmentation" PAMI 2000 . Esses trabalhos tentam definir "coerência" em termos de pistas de baixo nível, como cor, textura e suavidade de limites. Você pode rastrear esses trabalhos até a teoria da Gestalt .
Por outro lado, a "segmentação semântica" tenta particionar a imagem em partes semanticamente significativas e classificar cada parte em uma das classes pré-determinadas. Você também pode atingir o mesmo objetivo classificando cada pixel (em vez de toda a imagem / segmento). Nesse caso, você está fazendo uma classificação em termos de pixels, o que leva ao mesmo resultado final, mas em um caminho ligeiramente diferente ...
Então, suponho que você pode dizer que "segmentação semântica", "rotulagem de cena" e "classificação pixelwise" estão basicamente tentando atingir o mesmo objetivo: compreender semanticamente o papel de cada pixel na imagem. Você pode seguir vários caminhos para alcançar esse objetivo, e esses caminhos levam a ligeiras nuances na terminologia.
fonte
Eu li muitos artigos sobre Detecção de Objetos, Reconhecimento de Objetos, Segmentação de Objetos, Segmentação de Imagens e Segmentação Semântica de Imagens e aqui estão minhas conclusões que podem não ser verdadeiras:
Reconhecimento de objeto: em uma determinada imagem, você deve detectar todos os objetos (uma classe restrita de objetos depende do seu conjunto de dados), localizá-los com uma caixa delimitadora e rotular essa caixa delimitadora com um rótulo. Na imagem abaixo, você verá uma saída simples de um reconhecimento de objeto de última geração.
Detecção de objetos: é como o reconhecimento de objetos, mas nesta tarefa você tem apenas duas classes de classificação de objetos, o que significa caixas delimitadoras de objetos e caixas delimitadoras de não objetos. Por exemplo, detecção de carro: você deve detectar todos os carros em uma determinada imagem com suas caixas delimitadoras.
Segmentação de objeto: Assim como o reconhecimento de objeto, você reconhecerá todos os objetos em uma imagem, mas sua saída deve mostrar esse objeto classificando os pixels da imagem.
Segmentação de imagem: Na segmentação de imagem, você segmentará regiões da imagem. sua saída não rotulará segmentos e região de uma imagem que consistentemente entre si deveriam estar no mesmo segmento. Extrair super pixels de uma imagem é um exemplo dessa tarefa ou segmentação de primeiro plano-fundo.
Segmentação semântica: Na segmentação semântica você deve rotular cada pixel com uma classe de objetos (carro, pessoa, cachorro, ...) e não-objetos (água, céu, estrada, ...). Em outras palavras, em Segmentação Semântica, você rotulará cada região da imagem.
Acho que a rotulagem em nível de pixel e pixelwise é basicamente o mesmo, poderia ser segmentação de imagem ou segmentação semântica. Eu também respondi sua pergunta neste link da mesma forma.
fonte
As respostas anteriores são muito boas, gostaria de apontar mais algumas adições:
Segmentação de Objetos
uma das razões pelas quais isso caiu em desuso na comunidade de pesquisa é porque é problemática e vago. A segmentação de objetos costumava significar simplesmente encontrar um único ou um pequeno número de objetos em uma imagem e desenhar um limite ao redor deles e, para a maioria dos propósitos, você ainda pode assumir que significa isso. No entanto, também começou a ser usado para significar segmentação de blobs que podem ser objetos, segmentação de objetos do fundo (mais comumente agora chamado de subtração de fundo ou segmentação de fundo ou detecção de primeiro plano), e até mesmo em alguns casos usado de forma intercambiável com o reconhecimento de objetos usando caixas delimitadoras (isso parou rapidamente com o advento de abordagens de redes neurais profundas para reconhecimento de objetos, mas antes o reconhecimento de objetos também poderia significa simplesmente rotular uma imagem inteira com o objeto nela).
O que torna a "segmentação" "semântica"?
Simpy, cada segmento, ou no caso de métodos profundos cada pixel, recebe um rótulo de classe com base em uma categoria. A segmentação em geral é apenas a divisão da imagem por alguma regra. A segmentação do Meanshift , por exemplo, de um nível muito alto, divide os dados de acordo com as mudanças na energia da imagem. Corte do gráficoa segmentação com base na mesma não é aprendida, mas derivada diretamente das propriedades de cada imagem separada das demais. Métodos mais recentes (baseados em rede neural) usam pixels que são rotulados para aprender a identificar os recursos locais que estão associados a classes específicas e, em seguida, classificam cada pixel com base em qual classe tem a maior confiança para aquele pixel. Desta forma, "etiquetagem de pixel" é na verdade um nome mais honesto para a tarefa, e o componente de "segmentação" é emergente.
Segmentação de instância
Provavelmente o significado mais difícil, relevante e original de Segmentação de Objeto, "segmentação de instância" significa a segmentação de objetos individuais em uma cena, independentemente de serem do mesmo tipo. No entanto, uma das razões pelas quais isso é tão difícil é porque de uma perspectiva de visão (e de certa forma filosófica) o que torna uma instância de "objeto" não é totalmente claro. As partes do corpo são objetos? Esses "objetos parciais" deveriam ser segmentados por um algoritmo de segmentação de instância? Devem ser segmentados apenas se forem vistos separados do todo? E quanto aos objetos compostos, duas coisas claramente adjacentes, mas separáveis, devem ser um ou dois objetos (uma pedra colada no topo de uma vara é um machado, um martelo ou apenas uma vara e uma pedra, a menos que seja feita de maneira apropriada?). Além disso, não é t claro como distinguir instâncias. Um testamento é uma instância separada das outras paredes às quais está anexado? Em que ordem as instâncias devem ser contadas? Como eles aparecem? Proximidade do ponto de vista? Apesar dessas dificuldades, a segmentação de objetos ainda é um grande negócio porque, como humanos, interagimos com objetos o tempo todo, independentemente de seu "rótulo de classe" (usando objetos aleatórios ao seu redor como pesos de papel, sentados em coisas que não são cadeiras), e, portanto, alguns conjuntos de dados tentam chegar a esse problema, mas o principal motivo de não haver muita atenção dada ao problema ainda é porque ele não está bem definido.
Análise de cena / rotulagem de cena
A análise de cena é a abordagem de segmentação estrita para a rotulagem de cena, que também possui alguns problemas próprios de indefinição. Historicamente, a rotulação de cena significa dividir toda a "cena" (imagem) em segmentos e dar a todos um rótulo de classe. No entanto, também era usado para significar dar rótulos de classe a áreas da imagem sem segmentá-las explicitamente. No que diz respeito à segmentação, "segmentação semântica" não implica dividir toda a cena. Para a segmentação semântica, o algoritmo se destina a segmentar apenas os objetos que conhece, e será penalizado por sua função de perda por rotular pixels que não possuem nenhum rótulo. Por exemplo, o conjunto de dados MS-COCO é um conjunto de dados para segmentação semântica onde apenas alguns objetos são segmentados.
fonte