Reorganiza estrutura do projeto em trabalho/ e artigo/
Move arquivos de analise, apresentacao e outputs para subpastas dedicadas; remove caches orfaos e tex nao usados. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Binary file not shown.
47
artigo/Referencias.bib
Normal file
47
artigo/Referencias.bib
Normal file
@@ -0,0 +1,47 @@
|
||||
% REFERÊNCIAS DO NOSSO ARTIGO
|
||||
|
||||
|
||||
@article{toydas2021,
|
||||
title={Air refueling optimisation for more agile and efficient military deployment operations},
|
||||
author={Toydas, M. and Malyemez, C.},
|
||||
journal={The Aeronautical Journal},
|
||||
volume={126},
|
||||
number={1296},
|
||||
pages={365--380},
|
||||
year={2022},
|
||||
note={Publicado online em 19 de agosto de 2021},
|
||||
doi={10.1017/aer.2021.69}
|
||||
}
|
||||
|
||||
@misc{yamani1994,
|
||||
title={A new closed form solution to determine the fuel load for a cruise mission},
|
||||
author={Yamani, K.},
|
||||
howpublished={AIAA Paper 1994-3503},
|
||||
year={1994}
|
||||
}
|
||||
|
||||
@manual{embraer_kc390,
|
||||
title={KC-390 Millennium: Multimission Military Transport Aircraft},
|
||||
author={{Embraer}},
|
||||
organization={Embraer Defense {\&} Security},
|
||||
address={S{\~a}o Jos{\'e} dos Campos},
|
||||
year={2023},
|
||||
url={https://defense.embraer.com/kc-390}
|
||||
}
|
||||
|
||||
@manual{gams,
|
||||
title={GAMS -- A User's Guide},
|
||||
author={{GAMS Development Corporation}},
|
||||
address={Washington DC},
|
||||
year={2023},
|
||||
url={https://www.gams.com}
|
||||
}
|
||||
|
||||
@manual{r_core,
|
||||
title={R: A Language and Environment for Statistical Computing},
|
||||
author={{R Core Team}},
|
||||
organization={R Foundation for Statistical Computing},
|
||||
address={Vienna, Austria},
|
||||
year={2024},
|
||||
url={https://www.R-project.org/}
|
||||
}
|
||||
120
artigo/Referencias_SVM.bib
Normal file
120
artigo/Referencias_SVM.bib
Normal file
@@ -0,0 +1,120 @@
|
||||
% ======================================================================
|
||||
% Referências -- Artigo: Classificação de Imagens RGB com SVM
|
||||
% e Atributos Extraídos por Transfer Learning (MobileNetV2)
|
||||
% Curso CEAO-802 | Instituto Tecnológico de Aeronáutica
|
||||
% ======================================================================
|
||||
|
||||
% -------- Referência-base do trabalho (galoa / SBSR 2023) --------
|
||||
|
||||
@inproceedings{lacerda2023,
|
||||
author = {Lacerda, Marielcio Gon{\c{c}}alves and
|
||||
Habermann, Mateus and
|
||||
Lacerda, Camila Souza dos Anjos and
|
||||
Roos, Daniel Rodrigues and
|
||||
K{\"o}rting, Thales Sehn and
|
||||
Kux, Hermann Johann Heinrich},
|
||||
title = {Classifica{\c{c}}{\~a}o de Imagens Utilizando Imagens {RGB}
|
||||
e Termal Obtidas por {ARPS} de Pequeno Porte},
|
||||
booktitle = {Anais do XX Simp{\'o}sio Brasileiro de Sensoriamento Remoto (SBSR)},
|
||||
year = {2023},
|
||||
address = {Florian{\'o}polis, SC, Brasil},
|
||||
pages = {3368--3371},
|
||||
url = {https://proceedings.science/p/164924}
|
||||
}
|
||||
|
||||
% -------- Teoria SVM --------
|
||||
|
||||
@book{vapnik1995,
|
||||
author = {Vapnik, Vladimir N.},
|
||||
title = {The Nature of Statistical Learning Theory},
|
||||
publisher = {Springer},
|
||||
address = {New York},
|
||||
year = {1995},
|
||||
doi = {10.1007/978-1-4757-2440-0}
|
||||
}
|
||||
|
||||
@article{cortes1995,
|
||||
author = {Cortes, Corinna and Vapnik, Vladimir},
|
||||
title = {Support-Vector Networks},
|
||||
journal = {Machine Learning},
|
||||
volume = {20},
|
||||
number = {3},
|
||||
pages = {273--297},
|
||||
year = {1995},
|
||||
doi = {10.1007/BF00994018}
|
||||
}
|
||||
|
||||
% -------- SVM em Sensoriamento Remoto --------
|
||||
|
||||
@article{melgani2004,
|
||||
author = {Melgani, Farid and Bruzzone, Lorenzo},
|
||||
title = {Classification of Hyperspectral Remote Sensing Images
|
||||
with Support Vector Machines},
|
||||
journal = {{IEEE} Transactions on Geoscience and Remote Sensing},
|
||||
volume = {42},
|
||||
number = {8},
|
||||
pages = {1778--1790},
|
||||
year = {2004},
|
||||
doi = {10.1109/TGRS.2004.831865}
|
||||
}
|
||||
|
||||
@article{campsvalls2005,
|
||||
author = {Camps-Valls, Gustavo and Bruzzone, Lorenzo},
|
||||
title = {Kernel-Based Methods for Hyperspectral Image Classification},
|
||||
journal = {{IEEE} Transactions on Geoscience and Remote Sensing},
|
||||
volume = {43},
|
||||
number = {6},
|
||||
pages = {1351--1362},
|
||||
year = {2005},
|
||||
doi = {10.1109/TGRS.2005.846154}
|
||||
}
|
||||
|
||||
% -------- Transfer Learning / Redes Convolucionais --------
|
||||
|
||||
@inproceedings{sandler2018,
|
||||
author = {Sandler, Mark and Howard, Andrew and Zhu, Menglong and
|
||||
Zhmoginov, Andrey and Chen, Liang-Chieh},
|
||||
title = {{MobileNetV2}: Inverted Residuals and Linear Bottlenecks},
|
||||
booktitle = {Proceedings of the {IEEE} Conference on Computer Vision
|
||||
and Pattern Recognition (CVPR)},
|
||||
year = {2018},
|
||||
pages = {4510--4520},
|
||||
doi = {10.1109/CVPR.2018.00474}
|
||||
}
|
||||
|
||||
@article{cheng2020,
|
||||
author = {Cheng, Gong and Xie, Xingxing and Han, Junwei and
|
||||
Guo, Lei and Xia, Gui-Song},
|
||||
title = {Remote Sensing Image Scene Classification Meets Deep Learning:
|
||||
Challenges, Methods, Benchmarks, and Opportunities},
|
||||
journal = {{IEEE} Journal of Selected Topics in Applied Earth Observations
|
||||
and Remote Sensing},
|
||||
volume = {13},
|
||||
pages = {3735--3756},
|
||||
year = {2020},
|
||||
doi = {10.1109/JSTARS.2020.3005403}
|
||||
}
|
||||
|
||||
% -------- Random Forest --------
|
||||
|
||||
@article{breiman2001,
|
||||
author = {Breiman, Leo},
|
||||
title = {Random Forests},
|
||||
journal = {Machine Learning},
|
||||
volume = {45},
|
||||
number = {1},
|
||||
pages = {5--32},
|
||||
year = {2001},
|
||||
doi = {10.1023/A:1010933404324}
|
||||
}
|
||||
|
||||
% -------- Linguagem R --------
|
||||
|
||||
@manual{r_core,
|
||||
title = {R: A Language and Environment for Statistical Computing},
|
||||
author = {{R Core Team}},
|
||||
organization = {R Foundation for Statistical Computing},
|
||||
address = {Vienna, Austria},
|
||||
year = {2024},
|
||||
url = {https://www.R-project.org/}
|
||||
}
|
||||
519
artigo/artigo_svm_rgb.tex
Normal file
519
artigo/artigo_svm_rgb.tex
Normal file
@@ -0,0 +1,519 @@
|
||||
% ======================================================================
|
||||
% Artigo -- Classificação de Imagens RGB com SVM e Transfer Learning
|
||||
% Formato: SIGEport (IEEEtran, duas colunas), em português
|
||||
% Compilar com: pdflatex artigo_svm_rgb.tex
|
||||
% ======================================================================
|
||||
|
||||
\documentclass[a4paper]{SIGEport}
|
||||
\usepackage{graphicx}
|
||||
\usepackage[caption=false,font=footnotesize]{subfig}
|
||||
\usepackage{geometry}
|
||||
\usepackage{cite}
|
||||
\usepackage{amsmath}
|
||||
\usepackage{booktabs}
|
||||
\usepackage{array}
|
||||
\usepackage[hyphens]{url}
|
||||
\usepackage{microtype}
|
||||
\usepackage{float}
|
||||
\usepackage{placeins}
|
||||
\usepackage{listings}
|
||||
|
||||
\lstset{
|
||||
language=R,
|
||||
basicstyle=\ttfamily\scriptsize,
|
||||
breaklines=true,
|
||||
frame=single,
|
||||
xleftmargin=0.5em,
|
||||
xrightmargin=0.5em
|
||||
}
|
||||
|
||||
\geometry{top=20mm,bottom=20mm,left=18mm,right=12mm}
|
||||
|
||||
\begin{document}
|
||||
|
||||
\title{Classifica{\c{c}}{\~a}o de Imagens de Sensoriamento Remoto RGB
|
||||
com SVM e Atributos Extraídos por \textit{Transfer Learning}}
|
||||
|
||||
\author{Jo{\~a}o Marcos de Oliveira Costa$^1$,
|
||||
Eduardo Carlos Generoso J{\'u}nior$^1$,
|
||||
Vitor Cesa$^1$,
|
||||
Mateus Habermann$^1$
|
||||
e Daniel Pamplona$^1$\\ % [VERIFICAR] afiliação de Mateus Habermann (IEAv/INPE no artigo galoa)
|
||||
{\small $^1$Instituto Tecnol{\'o}gico de Aeron{\'a}utica (ITA),
|
||||
S{\~a}o Jos{\'e} dos Campos/SP -- Brasil}\\
|
||||
}
|
||||
|
||||
\maketitle
|
||||
|
||||
% ======================================================================
|
||||
\begin{resumo}
|
||||
Este trabalho avalia o desempenho de classificadores baseados em
|
||||
\textit{Support Vector Machine} (SVM) para a classificação de imagens
|
||||
de sensoriamento remoto coletadas por drones sobre ambiente urbano.
|
||||
A extração de atributos é realizada por meio de \textit{transfer
|
||||
learning} com a rede convolucional MobileNetV2, pré-treinada no
|
||||
conjunto ImageNet, produzindo vetores de 1.280 características por
|
||||
imagem. O \textit{dataset} compreende 1.248 imagens TIFF organizadas em
|
||||
13~classes de cobertura urbana coletadas sobre Guaratinguetá (SP).
|
||||
Cinco modelos foram comparados: SVM linear, SVM radial com parâmetros
|
||||
padrão, SVM radial com ajuste por busca em grade, SVM radial com
|
||||
redução dimensional via Análise de Componentes Principais (PCA) e
|
||||
\textit{Random Forest}. O melhor resultado foi obtido pelo SVM linear,
|
||||
com acurácia de 40,00\% na partição de teste e 40,15\% na validação
|
||||
cruzada \textit{k-fold} ($k=5$). O desempenho indica que a
|
||||
representação RGB, mesmo enriquecida por \textit{transfer learning},
|
||||
impõe um teto de discriminação para ambientes urbanos com alta
|
||||
similaridade espectral entre classes, motivando a incorporação de
|
||||
bandas termais em trabalhos futuros.
|
||||
\end{resumo}
|
||||
|
||||
\begin{chave}
|
||||
\textit{Support Vector Machine}; \textit{transfer learning};
|
||||
MobileNetV2; sensoriamento remoto; imagens RGB;
|
||||
classificação urbana; \textit{Random Forest}.
|
||||
\end{chave}
|
||||
|
||||
|
||||
|
||||
% ======================================================================
|
||||
\section{Introdução}
|
||||
|
||||
A classificação de imagens de sensoriamento remoto é tarefa central
|
||||
para o monitoramento ambiental, o planejamento urbano e a inteligência
|
||||
geoespacial. Com a popularização dos sistemas aéreos não tripulados
|
||||
(SANT), tornou-se possível coletar imagens de alta resolução espacial
|
||||
com baixo custo operacional, abrindo novas oportunidades para análises
|
||||
de cobertura e uso do solo em escala local~\cite{lacerda2023}.
|
||||
|
||||
Imagens RGB capturadas por drones de pequeno porte oferecem três
|
||||
bandas espectrais (vermelho, verde e azul), suficientes para
|
||||
discriminar feições com resposta espectral visível distinta.
|
||||
Em áreas urbanas, a diversidade de materiais construtivos (concreto,
|
||||
asfalto, telhas cerâmicas, metálicas e de amianto, vegetação rasteira
|
||||
e arbórea) produz classes com alta similaridade espectral no domínio
|
||||
RGB, tornando a tarefa de classificação intrinsecamente
|
||||
desafiadora~\cite{cheng2020}.
|
||||
|
||||
O uso de SVM em sensoriamento remoto é consolidado na literatura.
|
||||
Melgani e Bruzzone~\cite{melgani2004} demonstraram que SVMs com
|
||||
\textit{kernel} radial (RBF) superam classificadores clássicos em
|
||||
cenários hiperespectrais. Camps-Valls e Bruzzone~\cite{campsvalls2005}
|
||||
sistematizaram o emprego de métodos baseados em \textit{kernel} para
|
||||
imagens hiperespectrais, mostrando que a escolha adequada do
|
||||
\textit{kernel} e o ajuste de hiperparâmetros são determinantes para
|
||||
o desempenho. Em imagens RGB de resolução espacial muito alta, a
|
||||
escassez de informação espectral motiva o uso de descritores derivados
|
||||
de redes neurais convolucionais profundas como
|
||||
pré-processamento~\cite{cheng2020}.
|
||||
|
||||
O \textit{transfer learning} consiste em reutilizar representações
|
||||
aprendidas por uma rede convolucional em uma tarefa de larga escala,
|
||||
tipicamente a classificação do conjunto ImageNet, como extratores de
|
||||
atributos para um domínio-alvo com menor quantidade de
|
||||
dados~\cite{sandler2018}. Essa abordagem elimina a necessidade de
|
||||
treinamento de ponta a ponta com dados rotulados escassos, tornando-se
|
||||
atrativa para \textit{datasets} de sensoriamento remoto de médio
|
||||
porte e viabilizando o uso de classificadores clássicos sobre
|
||||
representações profundas.
|
||||
|
||||
Neste contexto, o presente trabalho aplica a rede MobileNetV2,
|
||||
pré-treinada no ImageNet, como extrator de atributos para um
|
||||
\textit{dataset} de imagens RGB de cobertura urbana em
|
||||
Guaratinguetá (SP), avaliando cinco variantes de classificadores
|
||||
SVM e \textit{Random Forest}. O trabalho complementa o estudo de
|
||||
Lacerda et al.~\cite{lacerda2023}, que empregou fusão RGB\,+\,TIR
|
||||
(\textit{thermal infrared}) com classificação orientada a objeto
|
||||
(GEOBIA) em área urbana similar, alcançando acurácia de 88,68\%;
|
||||
o presente estudo investiga o limite do canal RGB isolado com
|
||||
classificadores lineares e não-lineares sobre atributos profundos.
|
||||
|
||||
O restante do artigo está organizado da seguinte forma: a Seção~2
|
||||
apresenta a fundamentação teórica; a Seção~3 descreve a metodologia;
|
||||
a Seção~4 reporta os experimentos e resultados; a Seção~5 discute os
|
||||
achados; e a Seção~6 conclui o trabalho.
|
||||
|
||||
% ======================================================================
|
||||
\section{Fundamentação Teórica}
|
||||
|
||||
\subsection{\textit{Support Vector Machine}}
|
||||
|
||||
A SVM, introduzida por Cortes e Vapnik~\cite{cortes1995} e
|
||||
formalizada em~\cite{vapnik1995}, é um classificador de margem
|
||||
máxima que busca o hiperplano separador ótimo em um espaço de
|
||||
características. Dado um conjunto de treinamento
|
||||
$\{(\mathbf{x}_i, y_i)\}_{i=1}^n$, com $y_i \in \{-1,+1\}$,
|
||||
o problema primal é:
|
||||
\begin{equation}
|
||||
\min_{\mathbf{w},b,\boldsymbol{\xi}} \frac{1}{2}\|\mathbf{w}\|^2
|
||||
+ C\sum_{i=1}^n\xi_i,
|
||||
\label{eq:svm_primal}
|
||||
\end{equation}
|
||||
sujeito a $y_i(\mathbf{w}^\top\phi(\mathbf{x}_i)+b)\geq 1-\xi_i$ e
|
||||
$\xi_i\geq 0$, onde $C>0$ é o parâmetro de custo e $\phi(\cdot)$ é
|
||||
o mapeamento induzido por um \textit{kernel}
|
||||
$k(\mathbf{x},\mathbf{x}')=\phi(\mathbf{x})^\top\phi(\mathbf{x}')$.
|
||||
Para problemas não-linearmente separáveis, utiliza-se o \textit{kernel}
|
||||
RBF:
|
||||
\begin{equation}
|
||||
k(\mathbf{x},\mathbf{x}') =
|
||||
\exp\!\left(-\gamma\|\mathbf{x}-\mathbf{x}'\|^2\right),
|
||||
\label{eq:rbf}
|
||||
\end{equation}
|
||||
cujo hiperparâmetro $\gamma$ controla o raio de influência de cada
|
||||
vetor de suporte. A extensão para problemas multiclasse é feita pela
|
||||
estratégia \textit{one-vs-one}, que treina $\binom{K}{2}$
|
||||
classificadores binários e decide por votação~\cite{melgani2004};
|
||||
para $K=13$~classes, isso resulta em 78~classificadores binários.
|
||||
|
||||
\subsection{\textit{Random Forest}}
|
||||
|
||||
O \textit{Random Forest}, proposto por Breiman~\cite{breiman2001},
|
||||
é um método de aprendizado por agrupamento (\textit{ensemble}) que
|
||||
combina múltiplas árvores de decisão. Cada árvore é treinada sobre
|
||||
uma subamostra aleatória do conjunto de treinamento
|
||||
(\textit{bagging}) e utiliza, em cada divisão de nó, um subconjunto
|
||||
aleatório de atributos. O resultado final é obtido por votação
|
||||
majoritária entre as árvores, o que reduz a variância em relação
|
||||
a um único classificador. Além da classificação, o método fornece
|
||||
estimativas de importância das variáveis por meio do critério
|
||||
\textit{MeanDecreaseGini}, que quantifica a contribuição média de
|
||||
cada atributo na redução da impureza de Gini ao longo de todas as
|
||||
árvores da floresta.
|
||||
|
||||
\subsection{Atributos RGB em Sensoriamento Remoto}
|
||||
|
||||
Imagens RGB de SANT possuem resolução espacial tipicamente inferior
|
||||
a 10~cm, mas apenas três bandas espectrais, muito aquém dos sensores
|
||||
hiperespectrais. Em ambientes urbanos, a discriminação de classes
|
||||
espectralmente similares (como asfalto versus concreto) requer
|
||||
descritores texturais ou morfológicos além da informação espectral
|
||||
pura~\cite{cheng2020}. Estudos de classificação de cenas de
|
||||
sensoriamento remoto com \textit{deep learning} mostram que
|
||||
arquiteturas convolucionais profundas capturam essas texturas de
|
||||
forma consistente mesmo quando treinadas em domínios
|
||||
distintos~\cite{cheng2020}.
|
||||
|
||||
\subsection{\textit{Transfer Learning} e Redes Convolucionais}
|
||||
|
||||
Redes neurais convolucionais (CNN) profundas aprendem hierarquias de
|
||||
representação, evoluindo de bordas e texturas locais nas camadas
|
||||
iniciais até padrões semânticos de alto nível nas camadas finais.
|
||||
Quando treinada no ImageNet, uma CNN codifica atributos genéricos
|
||||
transferíveis para outros domínios sem necessidade de re-treinamento
|
||||
completo~\cite{sandler2018}.
|
||||
|
||||
A MobileNetV2~\cite{sandler2018} é uma arquitetura eficiente que
|
||||
emprega blocos de resíduo invertido com gargalo linear, com cerca de
|
||||
3,4~milhões de parâmetros. Sem a camada de classificação final e
|
||||
com \textit{Global Average Pooling}, produz um vetor de
|
||||
1.280~dimensões por imagem de entrada $224\times224$~px.
|
||||
Esses atributos alimentam um classificador externo, sem atualização
|
||||
dos pesos da rede.
|
||||
|
||||
% ======================================================================
|
||||
\section{Metodologia}
|
||||
|
||||
\subsection{Conjunto de Dados}
|
||||
|
||||
O \textit{dataset} é composto por 1.248 imagens TIFF coletadas por
|
||||
drone sobre a área urbana de Guaratinguetá (SP), organizadas em 13
|
||||
classes de cobertura urbana (C1--C13), com 96~imagens por
|
||||
classe. % [VERIFICAR] resolução espacial e sensor exatos
|
||||
Para equalizar o impacto das classes no treinamento, foi realizada
|
||||
uma amostragem estratificada de 50~imagens por classe, totalizando
|
||||
650~amostras. A Figura~\ref{fig:distclasses} mostra a distribuição
|
||||
das classes após a amostragem.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-6-1.png}
|
||||
\caption{Distribuição das classes no \textit{dataset} após amostragem
|
||||
estratificada (50 imagens/classe, 650 no total).}
|
||||
\label{fig:distclasses}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Extração de Atributos com MobileNetV2}
|
||||
|
||||
Cada imagem foi redimensionada para $224\times224$~pixels e
|
||||
normalizada para o intervalo $[-1, 1]$ pela transformação
|
||||
$(x / 127{,}5) - 1{,}0$, conforme a pré-normalização específica
|
||||
do MobileNetV2. A rede foi carregada com pesos pré-treinados no
|
||||
ImageNet por meio do pacote \texttt{keras3} em~R~\cite{r_core},
|
||||
sem a camada de classificação (\texttt{include\_top = FALSE}) e
|
||||
com \textit{Global Average Pooling} (\texttt{pooling = "avg"}),
|
||||
produzindo um vetor de 1.280~atributos por imagem:
|
||||
|
||||
\begin{lstlisting}
|
||||
modelo_base <- application_mobilenet_v2(
|
||||
include_top = FALSE,
|
||||
weights = "imagenet",
|
||||
pooling = "avg",
|
||||
input_shape = c(224L, 224L, 3L)
|
||||
)
|
||||
\end{lstlisting}
|
||||
|
||||
As imagens foram processadas em lotes de 16 (\textit{batch size}),
|
||||
com resultado armazenado em \textit{cache} para evitar
|
||||
reprocessamento. Após a extração, atributos com variância próxima
|
||||
de zero (\textit{near-zero variance}, NZV) foram removidos e os
|
||||
demais padronizados (\textit{center}/\textit{scale}).
|
||||
|
||||
\subsection{Divisão dos Dados e Validação}
|
||||
|
||||
As 650~imagens foram divididas em 70\% para treinamento
|
||||
(455~imagens) e 30\% para teste (195~imagens) por amostragem
|
||||
estratificada (\textit{holdout}). Adicionalmente, foi aplicada
|
||||
validação cruzada \textit{k-fold} com $k=5$ dobras estratificadas,
|
||||
para estimativa mais robusta da generalização. Na validação cruzada,
|
||||
os melhores hiperparâmetros do SVM radial ajustado, obtidos na etapa
|
||||
de \textit{holdout} ($C=1$, $\gamma=0{,}001$), foram reutilizados
|
||||
em cada dobra para evitar o custo computacional de re-otimização.
|
||||
Para o \textit{Random Forest}, o número de árvores foi reduzido para
|
||||
200 no \textit{k-fold} (contra 500 no \textit{holdout}) por razão
|
||||
de eficiência computacional.
|
||||
|
||||
\subsection{Redução Dimensional com PCA}
|
||||
|
||||
A Análise de Componentes Principais foi aplicada ao conjunto de
|
||||
treinamento. Para reter 95\% da variância explicada são necessários
|
||||
249~componentes (Figura~\ref{fig:pca}), o que evidencia a alta
|
||||
dispersão da informação ao longo das 1.280~dimensões do espaço
|
||||
MobileNetV2. Optou-se por reter 30~componentes para treinar o modelo
|
||||
PCA\,+\,SVM~radial, com custo computacional reduzido.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-18-1.png}
|
||||
\caption{Variância acumulada pelos componentes principais.
|
||||
Para 95\% da variância, são necessários 249~componentes.
|
||||
A linha vertical indica o corte em 30~componentes
|
||||
utilizado no modelo PCA\,+\,SVM radial.}
|
||||
\label{fig:pca}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Modelos Avaliados}
|
||||
|
||||
Cinco modelos foram treinados e avaliados:
|
||||
(i)~SVM linear, com $C=1$; % [VERIFICAR] valor exato de C para SVM linear
|
||||
(ii)~SVM radial com parâmetros fixos ($\mathit{cost}=10$,
|
||||
$\gamma=0{,}01$);
|
||||
(iii)~SVM radial ajustado por busca em grade,
|
||||
$C \in \{0{,}1;\;1;\;10;\;100\}$ e
|
||||
$\gamma \in \{0{,}001;\;0{,}01;\;0{,}05;\;0{,}1\}$,
|
||||
com melhor configuração $C=1$, $\gamma=0{,}001$;
|
||||
(iv)~PCA\,+\,SVM radial, com projeção em 30~componentes seguida de
|
||||
SVM radial com $\mathit{cost}=10$ e $\gamma=0{,}01$; e
|
||||
(v)~\textit{Random Forest} com 500~árvores e parâmetros padrão.
|
||||
Todos os modelos foram implementados em~R~\cite{r_core} com os
|
||||
pacotes \texttt{e1071} (SVM), \texttt{caret} e
|
||||
\texttt{randomForest}, com semente aleatória fixada em 123.
|
||||
|
||||
% ======================================================================
|
||||
\section{Experimentos e Resultados}
|
||||
|
||||
\subsection{Comparação de Desempenho}
|
||||
|
||||
A Tabela~\ref{tab:resultados} apresenta as métricas obtidas na
|
||||
partição de teste (\textit{holdout} 70/30) e na validação cruzada
|
||||
(\textit{k-fold}, $k=5$) para os cinco modelos. As métricas
|
||||
reportadas são acurácia global, índice Kappa de Cohen, sensibilidade
|
||||
macro-média, especificidade macro-média e F1-\textit{score}
|
||||
macro-médio.
|
||||
|
||||
\begin{table}[h]
|
||||
\centering
|
||||
\caption{Métricas de desempenho (\textit{holdout} e \textit{k-fold})}
|
||||
\label{tab:resultados}
|
||||
{\scriptsize
|
||||
\begin{tabular}{lccccc}
|
||||
\toprule
|
||||
Modelo & Acur. & Kappa & Sens. & Espec. & F1 \\
|
||||
\midrule
|
||||
\multicolumn{6}{l}{\textit{Holdout (70\%/30\%)}} \\
|
||||
\midrule
|
||||
SVM linear & 0,400 & 0,350 & 0,400 & 0,950 & 0,402 \\
|
||||
\textit{Rand. Forest} & 0,374 & 0,322 & 0,374 & 0,948 & 0,369 \\
|
||||
PCA + SVM rad. & 0,359 & 0,306 & 0,359 & 0,947 & 0,370 \\
|
||||
SVM rad. aj. & 0,354 & 0,300 & 0,354 & 0,946 & 0,352 \\
|
||||
SVM radial & 0,144 & 0,072 & 0,144 & 0,929 & 0,193 \\
|
||||
\midrule
|
||||
\multicolumn{6}{l}{\textit{K-fold} ($k = 5$)} \\
|
||||
\midrule
|
||||
SVM linear & 0,402 & 0,352 & 0,402 & --- & 0,409 \\
|
||||
PCA + SVM rad. & 0,368 & 0,315 & 0,368 & --- & 0,378 \\
|
||||
SVM rad. aj. & 0,362 & 0,308 & 0,362 & --- & 0,367 \\
|
||||
\textit{Rand. Forest} & 0,348 & 0,293 & 0,348 & --- & 0,350 \\
|
||||
SVM radial & 0,159 & 0,088 & 0,159 & --- & 0,223 \\
|
||||
\bottomrule
|
||||
\end{tabular}}
|
||||
{\scriptsize Especificidade macro não calculada para o \textit{k-fold}.}
|
||||
\end{table}
|
||||
|
||||
O SVM linear obteve o melhor desempenho em ambas as estratégias
|
||||
de avaliação. Na validação cruzada, alcançou acurácia de 40,15\% e
|
||||
$\kappa=0{,}352$, indicando concordância razoável acima do acaso.
|
||||
A Figura~\ref{fig:comparacao} compara as acurácias dos cinco modelos
|
||||
no \textit{holdout}, e a Figura~\ref{fig:multimetrica} apresenta
|
||||
as demais métricas, confirmando a consistência do SVM linear
|
||||
como melhor modelo em todas as dimensões avaliadas.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-23-1.png}
|
||||
\caption{Comparação da acurácia dos cinco modelos na partição de
|
||||
teste (\textit{holdout}).}
|
||||
\label{fig:comparacao}
|
||||
\end{figure}
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-24-1.png}
|
||||
\caption{Comparação de múltiplas métricas (acurácia, Kappa,
|
||||
sensibilidade e F1-\textit{score}) para os cinco modelos
|
||||
(\textit{holdout}).}
|
||||
\label{fig:multimetrica}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Análise por Classe}
|
||||
|
||||
A Figura~\ref{fig:confusao} exibe a matriz de confusão do SVM linear
|
||||
no conjunto de teste. A sensibilidade por classe varia de 13\%
|
||||
(C12) a 60\% (C5 e C9), passando por valores intermediários como
|
||||
C8~(53\%), C6~(53\%) e C3~(47\%). As classes C11, C12 e C13
|
||||
apresentam sensibilidades inferiores a 27\%, indicando que o modelo
|
||||
sistematicamente falha em discriminá-las das demais. A confusão
|
||||
predominante ocorre entre classes com resposta espectral similar
|
||||
no domínio visível, como diferentes tipos de telha e pavimentação.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-26-1.png}
|
||||
\caption{Matriz de confusão do SVM linear no conjunto de teste
|
||||
(195 amostras, 13 classes).}
|
||||
\label{fig:confusao}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Importância das Variáveis}
|
||||
|
||||
A Figura~\ref{fig:importancia} mostra as 20~variáveis mais
|
||||
importantes segundo o critério \textit{MeanDecreaseGini} do
|
||||
\textit{Random Forest}. Os atributos mais relevantes para a
|
||||
classificação são vetores de ativação específicos da camada de
|
||||
\textit{Global Average Pooling} do MobileNetV2, identificados
|
||||
pelos índices \texttt{feat\_XXXX}. % [VERIFICAR] identificar quais índices dominam
|
||||
A distribuição da importância ao longo dos 20~principais atributos
|
||||
não apresenta concentração acentuada em poucos índices, sugerindo
|
||||
que a discriminação das classes urbanas depende de combinações
|
||||
distribuídas das ativações profundas, em vez de um subconjunto
|
||||
pequeno de características dominantes.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-28-1.png}
|
||||
\caption{As 20 variáveis mais importantes segundo o critério
|
||||
\textit{MeanDecreaseGini} do \textit{Random Forest}.}
|
||||
\label{fig:importancia}
|
||||
\end{figure}
|
||||
|
||||
\subsection{\textit{Holdout} versus \textit{K-fold}}
|
||||
|
||||
As métricas obtidas por \textit{k-fold} foram consistentes com as do
|
||||
\textit{holdout} (Figura~\ref{fig:hkf}), com variação máxima de
|
||||
0,002 pontos de acurácia para o SVM linear, indicando ausência de
|
||||
sobreajuste significativo. A maior discrepância ocorreu com o
|
||||
\textit{Random Forest}, cujo desempenho no \textit{holdout} (37,44\%)
|
||||
superou o \textit{k-fold} (34,77\%). Parte dessa diferença é
|
||||
explicada pela redução de 500 para 200 árvores no
|
||||
\textit{k-fold}, adotada por razão de eficiência computacional.
|
||||
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\includegraphics[width=0.98\columnwidth]{%
|
||||
trabalho_svm_rgb_files/figure-html/unnamed-chunk-34-1.png}
|
||||
\caption{Comparação entre as acurácias obtidas por \textit{holdout}
|
||||
e por \textit{k-fold} ($k=5$) para os cinco modelos.}
|
||||
\label{fig:hkf}
|
||||
\end{figure}
|
||||
|
||||
% ======================================================================
|
||||
\section{Discussão}
|
||||
|
||||
A acurácia máxima de 40,15\% para 13 classes está abaixo do que
|
||||
seria típico em cenários com maior diversidade espectral. O resultado
|
||||
contrasta com o de Lacerda et al.~\cite{lacerda2023}, que obteve
|
||||
83,02\% somente com RGB e 88,68\% com fusão RGB\,+\,TIR em um
|
||||
problema de 8 classes. Três fatores explicam essa diferença.
|
||||
|
||||
Em primeiro lugar, o número de classes: com 13 categorias de
|
||||
cobertura urbana visualmente similares, o problema é
|
||||
consideravelmente mais difícil que classificações com 8 ou menos
|
||||
classes.
|
||||
|
||||
Em segundo lugar, a informação espectral: imagens RGB não capturam
|
||||
a reflectância termal (TIR), que diferencia materiais como telha
|
||||
cerâmica, concreto e asfalto, cujas emissividades são distintas
|
||||
mesmo quando a coloração no espectro visível é similar.
|
||||
|
||||
Em terceiro lugar, a representatividade do \textit{transfer
|
||||
learning}: a MobileNetV2, treinada no ImageNet, aprende descritores
|
||||
otimizados para objetos fotográficos do cotidiano. Sua transferência
|
||||
para imagens de coberturas urbanas em ponto de vista \textit{nadir}
|
||||
é parcialmente efetiva, mas não especializada para texturas de
|
||||
materiais construtivos~\cite{cheng2020}.
|
||||
|
||||
Um achado relevante é a superioridade do SVM linear sobre o SVM
|
||||
radial. Em espaços de alta dimensão (1.280 atributos), os dados
|
||||
tendem a se tornar mais linearmente separáveis, de modo que o
|
||||
\textit{kernel} linear encontra hiperplanos eficazes sem risco de
|
||||
sobreajuste. O \textit{kernel} RBF, por sua vez, é fortemente
|
||||
sensível ao parâmetro $\gamma$: com os valores padrão
|
||||
($\gamma=0{,}01$, $\mathit{cost}=10$), a função de similaridade
|
||||
colapsa e o modelo alcança apenas 14,36\% de acurácia. Após ajuste
|
||||
por busca em grade ($\gamma=0{,}001$, $\mathit{cost}=1$), o
|
||||
desempenho sobe para 35,38\%, porém ainda abaixo do SVM linear.
|
||||
|
||||
A aplicação de PCA antes do SVM radial com os mesmos parâmetros
|
||||
padrão ($\mathit{cost}=10$, $\gamma=0{,}01$) elevou a acurácia de
|
||||
14,36\% para 35,90\%, mesmo sem re-otimização dos hiperparâmetros.
|
||||
Isso indica que a redução de 1.280 para 30~componentes corrige
|
||||
implicitamente a escala de $\gamma$, tornando o \textit{kernel} RBF
|
||||
funcional sem busca em grade. O custo, porém, é a perda de variância
|
||||
explicada: os 30~componentes capturam menos de 20\% da variância
|
||||
total (Figura~\ref{fig:pca}), o que limita o teto de desempenho.
|
||||
|
||||
% ======================================================================
|
||||
\section{Conclusão}
|
||||
|
||||
Este trabalho avaliou cinco modelos (SVM linear, SVM radial em três
|
||||
configurações e \textit{Random Forest}) para a classificação de
|
||||
imagens de cobertura urbana RGB coletadas por drone, utilizando
|
||||
atributos de \textit{transfer learning} extraídos pela MobileNetV2.
|
||||
|
||||
O SVM linear obteve o melhor desempenho, com acurácia de 40,15\%
|
||||
na validação cruzada \textit{k-fold}, superando o SVM radial
|
||||
ajustado (36,15\%), o \textit{Random Forest} (34,77\%) e o SVM
|
||||
radial padrão (15,85\%). Os resultados confirmam que: (i)~em espaços
|
||||
de alta dimensão gerados por CNN, o \textit{kernel} linear é
|
||||
competitivo; (ii)~a parametrização de $\gamma$ é crítica para o
|
||||
\textit{kernel} RBF; e (iii)~a redução dimensional por PCA corrige
|
||||
implicitamente a escala do \textit{kernel} sem re-otimização.
|
||||
|
||||
Como principais direções futuras, destacam-se:
|
||||
(i)~incorporação da banda termal (TIR) para fusão de dados,
|
||||
conforme demonstrado em~\cite{lacerda2023};
|
||||
(ii)~uso de arquiteturas CNN pré-treinadas em \textit{datasets} de
|
||||
sensoriamento remoto (\textit{domain-specific transfer learning});
|
||||
(iii)~ampliação do número de amostras por classe; e
|
||||
(iv)~exploração de classificadores baseados em \textit{Transformers}
|
||||
para dados de cena.
|
||||
|
||||
\bibliographystyle{IEEEtran}
|
||||
\bibliography{Referencias_SVM}
|
||||
|
||||
\end{document}
|
||||
5462
artigo/artigos-referencia/datasets_2026.pdf
Normal file
5462
artigo/artigos-referencia/datasets_2026.pdf
Normal file
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Reference in New Issue
Block a user