\documentclass[12pt]{article}
\usepackage[a4paper,margin=1in,footskip=0.25in]{geometry} % set margins
\usepackage[portuguese]{babel}
\usepackage[utf8]{inputenc}
\usepackage[hidelinks]{hyperref} 
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{graphicx}    % needed for include graphics
\usepackage{subfigure}   % add subfigures
\usepackage{indentfirst}
\usepackage{float}       % needed for [H] figure placement option
\usepackage{setspace}    % needed for doublespacing
\usepackage{tikz}
\usepackage{algpseudocode}

% Macros
\renewcommand{\familydefault}{\sfdefault} % sans-serif
\newcommand{\lowtext}[1]{$_{\text{#1}}$}

% Adds ./img/ to the path of figures
\graphicspath{{./img/}}

\def\DocumentTitle{Proposta}
\def\AuthorName{Lucas Sung Jun Hong}

% Cover front
\begin{document}

\thispagestyle{empty}
\newpage
\begingroup
    \centering
    \sffamily\bfseries\fontsize{26}{31.2}\selectfont
    \DocumentTitle
    \\
    de trabalho
    \\ [0.4in]
    \normalfont\large
    Aluno:
    \\ [0.25em]
    \normalfont\normalsize
    \AuthorName
    \\ [0.4in]
    \normalfont\normalsize
    Supervisor:
    \\ [0.5em]
    Roberto Hirata Junior

    \vfill
    Universidade de São Paulo
    \\ [0.5em]
    São Paulo, SP, Brasil
    \\ [1.5em]
    2017
    \par
\endgroup
\newpage

% Use Roman numerals (i, ii, iii, etc.) for page numbers in the front matter.
\pagenumbering{roman}

\newpage
\tableofcontents
\newpage

% Use Arabic numerals (1, 2, 3, etc.) for subsequent page numbers.
\pagenumbering{arabic}


\newpage
\section{Introdução}
No aspecto da investigação criminal, nem sempre é possível identificar quem possa ser o de cujus devido a seus restos não identificáveis. Neste cenário, a Reconstrução Facial Forense (RFF) é um método empregado na tentativa de reconhecimento dessas vítimas.

Existem tipos diferentes de reconstrução: 2D e 3D. Este trabalho pretende reconstruir rostos de vítimas utilizando o tipo de reconstrução 3D, através da geração de imagem tridimensional de alta resolução, utilizando um software de modelagem 3D com código aberto chamado Blender. Uma meta é automatizar na medida do possível o processo da reconstrução, além de simplificar a interface do Blender para usuários não familiarizados com um software 3D.

O desenvolvimento deste projeto é interessante sendo que a geração é completamente virtual, eliminando a reconstrução 3D clássica, que utiliza argila e várias horas de trabalho. Em adição, usuários não precisarão passar pela elevada curva de aprendizado que o Blender normalmente requer em caso como modelagem de faces humanas.

\begin{figure}[H]
    \centering
    \includegraphics[scale=.3]{img/a00.JPG}
    \caption{Interface padrão do Blender \textit{versão 2.77}.}
    \label{fig:normal} 
\end{figure}
\newpage

\newpage
\section{Desenvolvimento}
Será desenvolvida uma ferramenta de extensão no Blender, conhecido como \textit{addon}, que possibilitará ao usuário alternar o modo de interação com o programa para um interface mais específica e direta para a reconstrução facial.

Utilizando o método americano juntamente com a tabela Tedeschi-Oliveira et al., que conterá específicações dos \textit{landmarks}, ou cilindros que indicam a espessura específica do tecido muscular facial do padrão brasileiro, serão gerados os \textit{landmarks} automaticamente de acordo com o grupo específico, por exemplo, caucasianos ou afro-americanos.

\begin{figure}[H]
    \centering
    \includegraphics[scale=.3]{img/a03.JPG}
    \caption{Ao centro, um crânio escaneado com os indicadores, ou seja, \textit{landmarks}, posicionados manualmente. Pela direita superior, o rosto gerado seguindo as especificações dos indicadores.}
    \label{fig:normal} 
\end{figure}

Com a junção do Blender e MakeHuman, um programa de gerador de modelos humanos em que se pode especificar o grupo racial, idade e sexo, deve-se criar uma solução que possibilita modelar e modificar o rosto facilmente utilizando as ferramentas do programa principal. Ultimamante, deseja-se testar se essa solução torna-se viável em casos de que se há necessidade de gerar um número de rostos grande.
\newpage

\newpage
\section{Trilha}
Primeiro, como é desejado facilitar a interação do usuário com o Blender, é necessário estudar as estruturas e ferramentas, como criação de botões, implementação de scripts em Python, para que seja possível modificar o programa ao nível de desenvolvedor.

Outro estudo crucial é como identificar pontos específicos de um crânio tridimensional de forma automática, para que consequentemente haja posicionamento dos \textit{landmarks} e em seguida, envolver o crânio virtual com um rosto.

A discussão é analisar como se aproximar no problema de identificação de pontos no modelo tridimensional: explorar o modelo tridimensional ou fazer um reconhecimento de pontos e bordas através de uma imagem 2D renderizada diretamente do crânio em estudo.

Deseja-se também comparar resultados de velocidade entre uma modelação manual tridimensional ou utilizando a ferramente desenvolvida pelo trabalho.

Finalmente, deseja-se verificar se o rosto virtual gerado produz resultados aceitáveis através da razão da proporção áurea.

\subsection{Fluxograma}
O trabalho pode ser dividido em funções principais. O fluxograma abaixo foi desenhado para ajudar a representar visualmente as etapas que o trabalho deverá possuir.

\begin{figure}[H]
    \includegraphics[scale=.3]{img/tasks_hierarchy-1.png}
    \caption{Fluxograma das etapas que devem ser tomadas para o desenvolvimento do \textit{addon}.}
    \label{fig:normal} 
\end{figure}

\subsection{Cronograma aproximado}
Segue-se um cronograma aproximado utilizando o fluxograma acima como referência.

\begin{center}
\begin{tabular}{ | p{2cm} | p{6cm} | p{6cm} | }
\hline
\textit{Mês} & \textit{Função} & \textit{Descrição} \\
\hline
Maio & Manipulator; MakeHuman; Landmark Generator & Criação de botões e ferramentas básicas para simplificação e alinhamento do crânio escaneado; Extração independente do rosto gerado pelo MakeHuman; Criação básica de ferramenta para geração dos landmarks segundo o grupo que a vítima pertence \\
\hline
Junho & Landmark Coordinates & Estudo e implementação de algoritmos para o reconhecimento de pontos de interesse ao longo do crânio. Consequentemente, o mesmo algoritmo pode ser aplicado para obter as posições no rosto gerado pelo MakeHuman \\
\hline
Julho & Armature; Landmark Positioning; Deformation & Posicionamento da armadura de esqueleto ao longo do rosto gerado pelo MakeHuman para o processo de deformação que levará ao rosto desejado; Após da obtenção das posições de interesse no crânio, posiciona-se os landmarks sob as coordenadas obtidas; Finalmente, por um processo de encaixe, juntamos os esqueletos da armadura com os landmarks, gerando o rosto virtual com as características indicadas pela análise do crânio \\ 
\hline
Agosto & Blender Interface & Desenvolvimento de uma interface mais amigável com os botões e ferramentas previamente desenvolvidos \\
\hline
Setembro & Test phase & Roda-se um número grande de aplicação da ferramenta desenvolvida, comparando-se com a modelagem tridimensional de forma manual. Por fim, aplica-se o teste da razão da proporção áurea \\
\hline
Outubro & Final tweaks & Certificação do funcionamento desejável da ferramenta \\
\hline
Novembro & \textbf{Entrega} & \\
\hline
\end{tabular}
\end{center}


\newpage
\end{document}
