Metro-map for Air Traffic Controllers

C. Hurter, M. Serrurier, R. Alonso, G. Tabart, J.-L. Vinot.
An automatic generation of schematic maps to display flight routes for air traffic controllers: structure and color optimization. AVI 2010, International Working Conference on Advanced Visual Interfaces , May 2010, Roma, Italy. pp 233-240, 2010

  • image responsive
  • Aircraft must follow strict Air Traffic Control (ATC) rules. One of these rules is that aircraft have to fly over pre-defined Flight Routes (FR). Current ATC visualizations do not display FRs because they are numerous and run into each other, and thus spoil the visualization. The schematic views for metro maps are used to maximize the transmission of relevant information (lines, metro stops) of network visualization. In this paper, we will focus on two different issues.

    First, we show how we transposed mathematical constraints used to produce metro maps into the specific field of ATC. The view produced is a context compatible, 2D picture of a schematic maps view for Air Traffic Control.

    Second, we propose to investigate the generation and placement of colors to be assigned to lines of the network. The first step is to find as many colors as lines of the network. These colors must be perceptually as distinct as possible, and available in the vocabulary of colors. The second step is to solve the NP-complete problem of the optimal assignment of these colors so that close lines have the most perceptively distant color.

    Finally, we assess the map produced through experimentation to validate its quality.

    First generation of discriminative colors in the LCHab color space. We mesure of the ditance between colors: DeltaE 2000

    [A Colour Appearance Model for Colour Manage-ment Systems: CIE CAM 2002, CIE 159, (2004) ]

    Our algorithm

  • image responsive
  • createRGBColorset (numColors, colorModel, ICCprofil, startAngle,extend){
    colorModel = LCHab
    ICCprofil = sRGB
    startAngle = 0.0
    extend = 360.0
    stepAngle = extend / numColors
    RGBcolors = array of numColors color
    foreach i e {1 . . numColors} {
    newH = startAngle + stepAngle * i
    newL = namedColorLum(newH,colorModel)
    newC = maxChromaInRGBgamut(newH,newL,colorModel,ICCprofil)
    RGBcolors[i] = LCHcolor2RGB([newL,newC,newH], colorModel,ICCprofil)
    return RGBcolors

    Second, gemetrical optimization (right image)

    Finally color assigments with best (right) and worst (left) discrimination power