144 lines
4.3 KiB
TeX
144 lines
4.3 KiB
TeX
\documentclass[a4paper]{article}
|
|
|
|
\iffalse
|
|
\usepackage[L7x,T1]{fontenc}
|
|
\usepackage[lithuanian]{babel}
|
|
\else
|
|
\usepackage[T1]{fontenc}
|
|
\usepackage[english]{babel}
|
|
\fi
|
|
|
|
\usepackage[utf8]{inputenc}
|
|
\usepackage{a4wide}
|
|
\usepackage{csquotes}
|
|
\usepackage[maxbibnames=99,style=authoryear]{biblatex}
|
|
\usepackage[pdfusetitle]{hyperref}
|
|
\usepackage{enumitem}
|
|
\usepackage[toc,page,title]{appendix}
|
|
\addbibresource{bib.bib}
|
|
\usepackage{caption}
|
|
\usepackage{subcaption}
|
|
\usepackage{gensymb}
|
|
\usepackage{varwidth}
|
|
\usepackage{tabularx}
|
|
\usepackage{float}
|
|
\usepackage{tikz}
|
|
\usepackage{minted}
|
|
\usetikzlibrary{er,positioning}
|
|
\definecolor{mypurple}{RGB}{117,112,179}
|
|
\input{version}
|
|
|
|
\newcommand{\DP}{Douglas \& Peucker}
|
|
\newcommand{\VW}{Visvalingam--Whyatt}
|
|
\newcommand{\WM}{Wang--M{\"u}ller}
|
|
|
|
\title{
|
|
Cartographic Generalization of Lines using free software \\
|
|
(example of rivers) \\ \vspace{4mm}
|
|
}
|
|
|
|
\iffalse
|
|
\fi
|
|
|
|
\author{Motiejus Jakštys}
|
|
|
|
\date{
|
|
\vspace{10mm}
|
|
Version: \VCDescribe
|
|
}
|
|
|
|
\begin{document}
|
|
\maketitle
|
|
|
|
\begin{abstract}
|
|
\label{sec:abstract}
|
|
|
|
Current open-source line generalization solutions have their roots in
|
|
mathematics and geometry, and are not fit for natural objects like rivers
|
|
and coastlines. This paper discusses our implementation of \WM algorithm
|
|
under and open-source license, explains things that we would had
|
|
appreciated in the original paper and compares our results to different
|
|
generalization algorithms.
|
|
\end{abstract}
|
|
|
|
\newpage
|
|
|
|
\tableofcontents
|
|
\listoffigures
|
|
|
|
\newpage
|
|
|
|
\section{Introduction}
|
|
\label{sec:introduction}
|
|
|
|
A number of cartographic line generalization algorithms have been researched,
|
|
which claim to better process cartographic objects like lines. These fall into
|
|
two rough categories:
|
|
\begin{itemize}
|
|
\item Cartographic knowledge was encoded to an algorithm (bottom-up
|
|
approach). One among these are \cite{wang1998line}.
|
|
\item Mathematical shape transformation which yields a more
|
|
cartographically suitable down-scaling. E.g. \cite{jiang2003line},
|
|
\cite{dyken2009simultaneous}, \cite{mustafa2006dynamic},
|
|
\cite{nollenburg2008morphing}.
|
|
\end{itemize}
|
|
|
|
During research for the mentioned articles, prototype code has been written for
|
|
most of the algorithms. However, none of them seem to be available for use
|
|
except for the two "classical" ones -- {\DP} and {\VW}.
|
|
|
|
\cite{wang1998line} is an algorithm specifically created for cartographic
|
|
generalization and available for general use, though it is only currently
|
|
available in a commercial product. This poses a problem for map creation in
|
|
open source software: there is not a similar high-quality simplification
|
|
algorithm to create down-scaled maps, so any cartographic work, which uses line
|
|
generalization as part of its processing, will be of sub-par quality.
|
|
We believe that availability of high-quality open-source tools is an important
|
|
foundation for future cartographic experimentation and development, thus it
|
|
it benefits the cartographic society as a whole.
|
|
|
|
This paper will be reviewing and comparing two widely available algorithms that
|
|
are often used for line generalization:
|
|
\begin{itemize}
|
|
\item \cite{douglas1973algorithms} via
|
|
\href{https://postgis.net/docs/ST_Simplify.html}{PostGIS Simplify}.
|
|
|
|
\item \cite{visvalingam1993line} via
|
|
\href{https://postgis.net/docs/ST_SimplifyVW.html}{PostGIS SimplifyVW}.
|
|
|
|
\end{itemize}
|
|
|
|
Since both algorithms produce jaggy output lines, it is worthwhile to process
|
|
those through a widely available \cite{chaikin1974algorithm} smoothing
|
|
algorithm via \href{https://postgis.net/docs/ST_ChaikinSmoothing.html}{PostGIS
|
|
ChaikinSmoothing}.
|
|
|
|
\section{Visual comparison}
|
|
|
|
\subsection{Comparison algorithms and parameters}
|
|
\subsection{Combining bends}
|
|
|
|
\section{Conclusions}
|
|
\label{sec:conclusions}
|
|
|
|
\section{Related Work and future suggestions}
|
|
\label{sec:related_work}
|
|
|
|
\printbibliography
|
|
|
|
\begin{appendices}
|
|
|
|
\section{Code listings}
|
|
|
|
We strongly believe that ability to reproduce the graphs here is critical for
|
|
the longevity of the work. Therefore we have added all the source files of
|
|
this report to the PDF document itself. To extract the files (and, if
|
|
desired, re-generate the report), run this simple script:
|
|
|
|
\inputminted[fontsize=\small]{bash}{extract-and-generate}
|
|
|
|
A working Docker installation, LaTeX environment
|
|
|
|
\end{appendices}
|
|
\end{document}
|