JP5893136B2 - 文字列配置描画装置 - Google Patents
文字列配置描画装置 Download PDFInfo
- Publication number
- JP5893136B2 JP5893136B2 JP2014521060A JP2014521060A JP5893136B2 JP 5893136 B2 JP5893136 B2 JP 5893136B2 JP 2014521060 A JP2014521060 A JP 2014521060A JP 2014521060 A JP2014521060 A JP 2014521060A JP 5893136 B2 JP5893136 B2 JP 5893136B2
- Authority
- JP
- Japan
- Prior art keywords
- character string
- evaluation function
- arrangement
- function value
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/006—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes
- G09B29/007—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes using computer methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/103—Formatting, i.e. changing of presentation of documents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/10—Map spot or coordinate position indicators; Map reading aids
- G09B29/106—Map spot or coordinate position indicators; Map reading aids using electronic means
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/22—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory
- G09G5/32—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of characters or indicia using display control signals derived from coded signals representing the characters or indicia, e.g. with a character-code memory with means for controlling the display position
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
- G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
- G09G5/37—Details of the operation on graphic patterns
- G09G5/377—Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
- G09G2380/00—Specific applications
- G09G2380/10—Automotive applications
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Educational Technology (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Educational Administration (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Ecology (AREA)
- Processing Or Creating Images (AREA)
- Instructional Devices (AREA)
- Traffic Control Systems (AREA)
Description
この発明は、道路名称等の文字列を地図上に動的に配置する文字列配置描画装置に関する。
従来、道路名称等の文字列を、文字列の配置を開始する点(以下、「文字列配置開始点」という)から、道路線(以下、「道路ノード列」という)に沿って配置する文字列配置機能を有する地図表示装置が知られている。
この地図表示装置では、文字列配置開始点が適切でない場合は、
(1)文字列同士の重なり
(2)文字の表示角度の変化による可読性の低下
(3)文字列の密集による可読性の低下
(4)表示範囲の変化により文字列の一部が欠ける
などといった問題が起きる。
(1)文字列同士の重なり
(2)文字の表示角度の変化による可読性の低下
(3)文字列の密集による可読性の低下
(4)表示範囲の変化により文字列の一部が欠ける
などといった問題が起きる。
そこで、上述した(1)および(2)の問題を解決するために、非特許文献1は、可読性が高い位置に文字列配置開始点を変更する技術を開示している。この技術においては、文字列同士の重複を示す関数および文字列が沿う道路ノード列の角度変化を示す関数によって構成される評価関数の値を最小化することにより、最適な文字列配置開始点が求められる。
また、上述した(3)の問題を解決するために、特許文献1は、表示範囲の変化に応じて動的に文字列の位置を変更する技術を開示している。
Shawn Edmondson,"A General Cartographic Labeling Algorithm",The International Journal for Geographic Information and Geovisualization, Volume 33,Number 4/ Winter 1996
非特許文献1に開示された技術を用いれば、上述した(1)および(2)の問題を解決できるが、上述した(3)の問題、つまり文字列の密集による可読性低下を避けることはできない。また、特許文献1に開示された技術では、上述した(1)〜(3)の問題を考慮して文字列の配置位置を決めている訳ではないので、これらの問題の発生を避けることはできない。
このように、上述した(1)〜(4)の問題のうち、一部の問題を避ける技術は知られているものの、(1)〜(4)の問題全てを同時に避けることはできない。
この発明は、上述した(1)〜(4)の問題全てを避けるためになされたものであり、文字列の重複、文字列が沿う道路の角度変化だけでなく、文字列の密集度合い、文字列と表示範囲の関係も加味して文字列を最適な位置に配置できる文字列配置描画装置を提供することを課題とする。
この発明に係る文字列配置描画装置は、文字列を、文字列の配置候補点から道路ノード列に沿って配置する文字列配置部と、文字列配置部で配置された文字列同士の間隔による前記文字列の可読性、および文字列と表示範囲との関係を評価する評価関数値を算出する評価関数算出部と、評価関数算出部で算出された評価関数値を用いて文字列を描画する文字列描画部を備えている。
この発明に係る文字列配置描画装置によれば、文字列の重複、文字列が沿う道路の角度変化だけでなく、文字列の密集度合い、文字列と表示範囲の関係も加味して文字列を最適な位置に配置できる。
以下、この発明の実施の形態を、図面を参照しながら詳細に説明する。
実施の形態1.
図1は、この発明の実施の形態1に係る文字列配置描画装置の構成を示すブロック図である。この文字列配置描画装置は、文字列データ記憶部11、文字列データ取得部12、表示範囲データ記憶部13、処理対象文字列特定部14、候補点取得部15、処理対象候補点特定部16、文字列配置部17、評価関数算出部18、最小評価関数値保存部19、文字列描画部20、最小評価関数値データ記憶部21および文字列配置データ記憶部22を備えている。
実施の形態1.
図1は、この発明の実施の形態1に係る文字列配置描画装置の構成を示すブロック図である。この文字列配置描画装置は、文字列データ記憶部11、文字列データ取得部12、表示範囲データ記憶部13、処理対象文字列特定部14、候補点取得部15、処理対象候補点特定部16、文字列配置部17、評価関数算出部18、最小評価関数値保存部19、文字列描画部20、最小評価関数値データ記憶部21および文字列配置データ記憶部22を備えている。
文字列データ記憶部11は、文字列データを記憶する。文字列データは、文字列の数、各文字列の文字数、各文字の横幅および縦幅、文字列が沿う道路ノード列、および、各文字列の配置候補点を含む。
文字列データ取得部12は、文字列データ記憶部11から文字列データを取得する。この文字列データ取得部12で取得された文字列データは、処理対象文字列特定部14、候補点取得部15および文字列配置部17に送られる。
表示範囲データ記憶部13は、文字列を表示する範囲を表示範囲データとして記憶する。この表示範囲データ記憶部13に記憶されている表示範囲データは、処理対象文字列特定部14および評価関数算出部18を構成する表示範囲関数算出部25(詳細は後述)によって読み出される。
処理対象文字列特定部14は、文字列データ取得部12から送られてきた文字列データの中の文字列と、表示範囲データ記憶部13から読み出した表示範囲データによって示される表示範囲との関係から、配置位置の変更が必要な文字列を選択して特定する。この処理対象文字列特定部14で特定された文字列は、処理対象文字列として候補点取得部15および文字列配置部17に送られる。この処理対象文字列特定部14で文字列を選択することにより、処理負荷の軽減が可能になっている。
候補点取得部15は、文字列データ取得部12から送られてくる文字列データに含まれる配置候補点の中から、処理対象文字列特定部14から送られてくる処理対象文字列(配置位置の変更処理の対象となる文字列)の配置候補点を取得する。この候補点取得部15で取得された配置候補点は、処理対象候補点特定部16に送られる。
処理対象候補点特定部16は、候補点取得部15から送られてきた配置候補点の中から処理対象とする配置候補点、具体的には、表示範囲内に含まれる配置候補点を選択して特定する。この処理対象候補点特定部16で特定された配置候補点は、文字列配置部17に送られる。この処理対象候補点特定部16で配置候補点を選択することにより、処理負荷の軽減が可能になっている。
文字列配置部17は、処理対象文字列特定部14から送られてくる処理対象文字列を、処理対象候補点特定部16から送られてくる配置候補点から、文字列データ取得部12から送られてくる文字列データに含まれる道路ノード列に沿って配置する。この文字列配置部17で配置された文字列は、評価関数算出部18に送られる。
評価関数算出部18は、文字列配置部17から送られてくる配置された文字列の可読性を評価するための評価関数を算出する。この評価関数算出部18で算出された評価関数は、最小評価関数値保存部19に送られる。
ここで、評価関数算出部18について、さらに詳細に説明する。評価関数算出部18は、文字列間隔関数算出部23、道路角度関数算出部24、表示範囲関数算出部25および評価関数値更新部26を備えている。
文字列間隔関数算出部23は、文字列配置部17から送られてくる文字列同士の間隔により文字列の可読性を評価する関数値(以下、「文字列間隔関数値」という)を算出する。この文字列間隔関数算出部23で算出された文字列間隔関数値は、評価関数値更新部26に送られる。
道路角度関数算出部24は、文字列配置部17から送られてくる文字列を配置する道路の角度変化を評価する関数値(以下、「道路角度関数値」という)を算出する。この道路角度関数算出部24で算出された道路角度関数値は、評価関数値更新部26に送られる。
表示範囲関数算出部25は、表示範囲データ記憶部13から読み出した表示範囲データによって示される表示範囲と、文字列配置部17から送られてくる文字列の関係を評価する関数値(以下、「表示範囲関数値」という)を算出する。この表示範囲関数算出部25で算出された表示範囲関数値は、評価関数値更新部26に送られる。
評価関数値更新部26は、文字列間隔関数算出部23から送られてきた文字列間隔関数値、道路角度関数算出部24から送られてきた道路角度関数値および表示範囲関数算出部25から送られてきた表示範囲関数値によって評価関数値を更新する。この評価関数値更新部26で更新された評価関数値は、最小評価関数値保存部19に送られる。
最小評価関数値保存部19は、評価関数算出部18から送られてきた評価関数値のうちの最も小さい評価関数値を最小評価関数値データ記憶部21に保存する。具体的には、最小評価関数値保存部19は、文字列間隔関数算出部23で算出された文字列間隔関数値のうち、文字列同士の重なりを回避して文字列の可読性を高めることができるものを保存し、道路角度関数算出部24で算出された道路角度関数値のうち、平坦でない道路への文字列配置を回避するような最小の道路角度関数値を保存し、さらに、表示範囲関数算出部25で算出された表示範囲関数値のうち、表示範囲外への文字列配置を回避するような表示範囲関数値を保存する。また、最小評価関数値保存部19は、最小評価関数値データ記憶部21に保存した評価関数値に対応する文字列の配置、つまり、最も小さい評価関数値が算出された時の文字列の配置を文字列配置データ記憶部22に保存する。
文字列描画部20は、最小評価関数値保存部19が評価関数値および文字列の配置を保存した場合に、文字列配置データ記憶部22から文字列を読み出して描画する。
次に、上記のように構成される実施の形態1に係る文字列配置描画装置の動作を説明する。図2は、文字列配置描画装置の動作を示すフローチャートである。なお、この図2に示す処理は、所定時間間隔またはフレーム毎に行うことができるが、ここでは、一定時間αの間隔で行うものとし、前回に処理を行った時刻をtとする。
以下においては、文字列データは、文字列『GOOD』および文字列『NEED』を含み、各文字の横幅および縦幅はそれぞれ10および20とし、文字列『GOOD』が沿う道路ノード列はP(1)=(100,−20)、P(2)=(100,125)、P(3)=(220,125)とし、文字列『NEED』が沿う道路ノード列はP(4)=(0,75)、P(5)=(200,75)とする。
また、評価関数計算用のパラメータROAD_ANGLE_COVARIANCE(以下、「RC」と略する)を下記(1)式とし、LABEL_OVERLAP_COVARIANCE(以下、「LC」と略する)を下記(2)式とし、ROAD_ANGLE_SCALE(以下、「RS」と略する)を「1」とし、LABEL_OVERLAP_SCALE(以下、「LS」と略する)を「1」とし、DISPLAY_AREA_SCALE(以下、「DS」と略する)を「4」とし、DISPLAY_AREA_FUNCTION_SCALE(以下、「DFS」と略する)を「0.1」とする。
また、時刻tにおける表示範囲をRt(1)=(0,−20)、Rt(2)=(200,−20)、Rt(3)=(200,180)、Rt(4)=(0,180)とし、時刻tから一定時間αだけ経過した時刻t+αにおける表示範囲をRt+α(1)=(0,0)、Rt+α(2)=(200,0)、Rt+α(3)=(200,200)、Rt+α(4)=(0,200)とする。
また、文字列『GOOD』の配置候補点をC(1)=(100,−20)、C(2)=(100,60)、C(3)=(100,115)、C(4)=(120,125)、C(5)=(180,125)とする。
また、時刻tにおける文字列『GOOD』の配置は、Lt(1)=(100,−20)、Lt(2)=(100,−10),Lt(3)=(100,0)、Lt(4)=(100,10)とする。Lt(1)、Lt(2)、Lt(3)およびLt(4)は、文字列『GOOD』を構成する文字『G』、『O』、『O』および『D』の左下座標をそれぞれ示し、文字は道路に沿って配置されている。
同様に、時刻tにおける文字列『NEED』の配置は、Lt(5)=(80,75)、Lt(6)=(90,75)、Lt(7)=(100,75)、Lt(8)=(110,75)とする。Lt(5)、Lt(6)、Lt(7)およびLt(8)は、文字列『NEED』を構成する文字『N』、『E』、『E』および『D』の左下座標をそれぞれ示し、文字は道路に沿って配置されている。
図3は、道路ノード列P(1)〜P(3)と、文字列『GOOD』の配置候補点C(1)〜C(5)と、時刻t+αにおける表示範囲との関係を示している。また、図4は、時刻tにおける表示範囲と、道路ノード列P(1)〜P(3)と、文字列『GOOD』との関係を示している。
この文字列配置描画装置においては、時刻t+αになったタイミングで、図2のフローチャートに示す処理が開始される。時刻tにおける表示範囲Rt(1)〜Rt(4)は、時刻t+αにおいて表示範囲Rt+α(1)〜Rt+α(4)に変化する。図5は、時刻t+αにおける表示範囲Rt+α(1)〜Rt+α(4)と文字列の関係を示している。なお、図5の中の文字列の配置位置は、図2のフローチャートに示す処理が実行される前の位置である。
処理が開始されると、まず、文字列データが取得される(ステップST11)。すなわち、文字列データ取得部12は、文字列データ記憶部11から文字列データを取得する。この場合、文字列『GOOD』、文字列『NEED』、これらの文字列配置に関わる配置候補点、および、道路ノード列が取得される。この取得された文字列データは、処理対象文字列特定部14、候補点取得部15および文字列配置部17に送られる。
次いで、処理対象文字列の特定が行われる(ステップST12)。すなわち、処理対象文字列特定部14は、文字列データ取得部12から送られてきた文字列データの中の文字列と、表示範囲データ記憶部13から読み出した表示範囲データによって示される表示範囲との関係から、配置位置の変更が必要な文字列を特定する。具体的には、処理対象文字列特定部14は、以下の条件を満たす文字列を特定する。
<条件1>時刻tでは配置不可能であったが、時刻t+αになって表示範囲内に配置可能になった文字列
<条件2>一部または全部が表示範囲外になった文字列
<条件1>時刻tでは配置不可能であったが、時刻t+αになって表示範囲内に配置可能になった文字列
<条件2>一部または全部が表示範囲外になった文字列
図5に示した例の場合、文字列『GOOD』と『NEED』のうち、文字列『GOOD』のみが上述した条件に該当する。すなわち、文字列『GOOD』は、時刻t+αにおいて、1文字目と2文字目が表示範囲外になるため、条件2に該当する。
処理対象文字列が特定されると、次いで、ステップST13とステップST24との間の処理が処理対象文字列数の分だけ繰り返し実行され、特定された文字列の配置位置が変更される。
この繰り返し処理では、まず、配置候補点が取得される(ステップST14)。すなわち、候補点取得部15は、ステップST11で文字列データ取得部12によって取得された文字列データに含まれる配置候補点の中から、処理対象文字列特定部14から送られてくる処理対象文字列(配置位置の変更処理の対象となる文字列)の配置候補点を取得する。図5に示した例の場合、文字列『GOOD』の配置候補点C(1)〜C(5)(図3参照)が取得される。
次いで、処理対象候補点が特定される(ステップST15)。すなわち、処理対象候補点特定部16は、候補点取得部15から送られてきた配置候補点の中から配置候補点を特定し、この特定した配置候補点を文字列配置部17に送る。上記配置候補点の特定は、具体的には以下の条件3を満たすか否かを判定することにより行うことができる。
<条件3>表示範囲内に含まれる配置候補点(表示範囲よりも大きな範囲を用いることもできる)
<条件3>表示範囲内に含まれる配置候補点(表示範囲よりも大きな範囲を用いることもできる)
なお、この実施の形態1では、表示範囲内の配置候補点を特定する処理を行うものとして説明するが、上記条件3の括弧内に示すように、表示範囲よりも大きな範囲で処理対象文字列の配置候補点を特定することもできる。
図5に示した例の場合、文字列『GOOD』の配置候補点C(1)〜C(5)のうち、C(1)は表示範囲外となるため、処理対象文字列の配置候補点は、C(2)〜C(5)となる。
次いで、最小評価関数値が最大値(MAX)に設定される(ステップST16)。すなわち、評価関数算出部18は、以下で算出する最小評価関数値を最大値に初期化する。その後、ステップST17とステップST23との間の処理を、処理対象とする候補点(処理候補点)の数の分だけ繰り返して実行し、処理対象文字列の配置候補点毎の処理が行われる。
具体的には、まず、文字列の配置が行われる(ステップST18)。すなわち、文字列配置部17は、処理対象文字列特定部14から送られてくる処理対象の文字列を、処理対象候補点特定部16から送られてくる配置候補点から、文字列データ取得部12から送られてくる文字列データに含まれる道路ノード列に沿って配置する。上述した例の場合、まず、配置候補点C(2)から道路ノード列に沿って文字列が配置される。この様子を図6に示す。文字『G』、『O』、『O』および『D』の中心座標は、それぞれ(110,65)、(110,75)、(110,85)および(110,95)である。
次いで、評価関数算出が行われる(ステップST19)。すなわち、評価関数算出部18は、評価関数を算出する。評価関数を(3)式に示す。(3)式中の文字列間隔関数値、道路角度関数値および表示範囲関数値は、文字列間隔関数算出部23、道路角度関数算出部24および表示範囲関数算出部25においてそれぞれ算出されて評価関数値更新部26に送られる。ここで、文字列間隔関数値は、文字列同士の重なり度合いを示す値である。また、道路角度関数値は、文字列の沿う道路の角度変化を示す値である。また、表示範囲関数値は、文字列と表示範囲の関係を示す値である。
評価関数値更新部26は、文字列間隔関数算出部23、道路角度関数算出部24および表示範囲関数算出部25からそれぞれ送られてくる文字列間隔関数値、道路角度関数値および表示範囲関数値を加算し、最終的に(3)式で示される評価関数値Fが算出される。
ここで、ステップST19において、評価関数算出部18で行われる評価関数算出処理の詳細を、図7に示すフローチャートを参照しながら説明する。
評価関数算出処理では、まず、評価関数値Fが「0」に初期化される(ステップST31)。その後、ステップST32とステップST37との間の処理が文字数分だけ繰り返して実行され、評価関数が算出される。
具体的には、まず、文字列間隔関数が算出される(ステップST33)。すなわち、文字列間隔関数算出部23は、文字列間隔関数値を求め、評価関数値更新部26に送る。文字列間隔関数値は、下記(4)式により求めることができる。(4)式中のLabelNumは、既に配置されている文字列数、CharacterNumjはj番目の文字列に含まれる文字数を示す。また、K(u,A)は、下記(5)式に示すガウスカーネルを示す。xnは処理対象文字列のn番目の文字の中心座標、x’jiはj番目の文字列中のi番目の文字の中心座標を示す。
上述した例の場合、既に配置されている文字列は『NEED』のみであるため、LabelNum=1となる。また、文字列『NEED』の文字数は4であるため、CharacterNum1は4となる。また、処理対象文字列の1番目の文字(n=1)の処理であるため、x1=(110,65)である。これらを用いて(4)式を計算すると、文字列間隔関数値は、1.6649となる。
なお、この例の場合の文字列間隔関数値の分布は、図8に示すようになり、既に配置されている文字列『NEED』の付近に高い値を有する。
次いで、道路角度関数が算出される(ステップST34)。すなわち、道路角度関数算出部24は、道路角度関数値を求め、評価関数値更新部26に送る。道路角度関数値は、下記(6)式により求めることができる。(6)式中のRoadNumは、始点・終点以外の道路のノード数、x”iはi番目のノードの位置を示す。また、RoadAngleは、道路ノード列の角度変化をラジアンで示したものである。
上述した例の場合、文字列『GOOD』が沿う道路ノード列の、始点・終点以外の道路ノード数は1であるため、RoadNum=1となり、始点・終点以外のノードはP(2)となる。また、角度P(1)P(2)P(3)はπ/2であるため、RoadAngle=π/2となる。この際、RoadAngleは、π以下の値を取るようにする。これらを用いて(6)式を計算すると、道路角度関数値は、1.3404×e−16となる。
なお、この例の場合の道路角度関数値の分布は、図9に示すようになり、始点・終点以外のノードP(2)の位置にピークを有する。
次いで、表示範囲関数が算出される(ステップST35)。すなわち、表示範囲関数算出部25は、表示範囲関数値を求め、評価関数値更新部26に送る。表示範囲関数値は、下記(7)式により求めることができる。(7)式中のdistn1は処理対象文字列のn番目の文字の中心座標と、表示範囲の左辺との距離、distn2、distn3、およびdistn4は、同様に、n番目の文字の中心座標と、表示範囲の上辺、右辺および下辺との距離をそれぞれ示す。また、K’(A,B)は、下記(8)式に示すシグモイド関数、αniは、下記(9)式に示すように、文字列の位置と表示範囲の位置関係により変化する値である。
上述した例の場合、x1=(110,65)は左辺の右、上辺の下、右辺の左、下辺の上に存在するため、αn1〜αn4の値は全て−1になる。また、左辺、上辺、右辺、下辺との距離dist11〜dist14は、以下に示す値となる。
・dist11=110
・dist12=65
・dist13=90
・dist14=135
これらを用いて(7)式を計算すると、0.0066となる。
・dist11=110
・dist12=65
・dist13=90
・dist14=135
これらを用いて(7)式を計算すると、0.0066となる。
なお、この場合の表示範囲関数値の分布は、図10に示すようになり、表示範囲内は低い値を有し、表示範囲外は高い値を有する。
次いで、評価関数の更新が行われる(ステップST36)。すなわち、評価関数値更新部26は、文字列間隔関数算出部23から送られてきた文字列間隔関数値、道路角度関数算出部24から送られてきた道路角度関数値および表示範囲関数算出部25から送られてきた表示範囲関数値を用いて(3)式のシグマ(Σ)内を計算し、評価関数値Fを更新する。その結果、評価関数値F=F+log(1.6649)+log(1.3404×e−16)+log(0.0066)となり、評価関数値Fは−13.7257となる。
これらの処理が文字毎に繰り返されて、評価関数値Fが更新され、配置候補点C(2)から配置された文字列の評価関数値が求められる。ここで求められる、評価関数値は−73.2096となる。
その後、図2のフローチャートに示す処理に戻り、評価関数値が最小であるかどうか、つまり「最小評価関数値>評価関数値」であるかどうかが調べられる(ステップST20)。このステップST20において、評価関数値が最小であることが判断されると、文字列配置の保存が行われる(ステップST21)。すなわち、最小評価関数値保存部19は、その時点の文字列の配置を、文字列配置データ記憶部22に保存する。
次いで、最小評価関数値の更新が行われる(ステップST22)。すなわち、最小評価関数値保存部19は、評価関数値は最小であるため、最小評価関数値データ記憶部21に保存されている評価関数値を、評価関数算出部18で算出された評価関数値に置き換えることにより更新する。
一方、上記ステップST20において、評価関数値が最小でないことが判断されると、ステップST21およびステップST22の処理はスキップされる。
以下同様にして、図11に示すような配置候補点C(3)から配置した文字列、図12に示すような配置候補点C(4)から配置した文字列、および、図13に示すような配置候補点C(5)から配置した文字列に対しても同様に評価関数値を計算し、評価関数値が最小か否かを判定する。図14に各配置候補点から配置した文字列と、評価関数値の対応を示す。
上述したステップST13〜ステップST24の間の処理が終了すると、次いで、文字列の描画が行われる(ステップST25)。すなわち、文字列描画部20は、配置候補点C(4)から配置した文字列の評価関数値が最も低いため、C(4)から配置した文字列を文字列配置データ記憶部12から読み出して描画する。その後、処理は終了する。
文字列配置描画装置は、一般に、図15に示すように、道路名称等の文字列を、文字列の配置を開始する点(文字列配置開始点)から、道路線(道路ノード列)に沿って配置する機能を有するが、背景技術の欄で示したように、文字列配置開始点が適切でないことに起因する4つの問題、つまり
(1)図16に示すような文字列同士の重なり
(2)図17に示すような文字の表示角度の変化による可読性の低下
(3)図18に示すような文字列の密集による可読性の低下
(4)図19に示すような表示範囲の変化により文字列の一部が欠ける
という問題を有する。しかしながら、上述した実施の形態1に係る文字列配置描画装置によれば、このような問題を解消できる。
(1)図16に示すような文字列同士の重なり
(2)図17に示すような文字の表示角度の変化による可読性の低下
(3)図18に示すような文字列の密集による可読性の低下
(4)図19に示すような表示範囲の変化により文字列の一部が欠ける
という問題を有する。しかしながら、上述した実施の形態1に係る文字列配置描画装置によれば、このような問題を解消できる。
また、上述した非特許文献1に開示された技術では、図20に示すような文字列同士の重複を示す関数と、図21に示すような文字列が沿う道路ノード列の角度変化を示す関数で構成された(10)式に示す評価関数値fを最小化することにより、最適な文字列配置開始点が求められる。
なお、(10)式中のα1とα2は、overlap(i)とflatness(i)の値を調整するパラメータであり、String_Numは文字列数を示す。
なお、(10)式中のα1とα2は、overlap(i)とflatness(i)の値を調整するパラメータであり、String_Numは文字列数を示す。
この評価関数fを用いれば、(1)文字列同士の重複と(2)文字列が沿う道路の角度変化による可読性低下という問題は回避できるが、(3)文字列の密集による可読性低下という問題を回避できない。しかしながら、この実施の形態1に係る文字列配置描画装置によれば、(3)文字列の密集による可読性低下という問題をも回避できる。
また、(4)の問題を解決するために、特許文献1に開示された技術では、表示範囲の変化に応じて動的に文字列の位置を変更することができるが、(1)〜(3)の問題は考慮されていない。図22は特許文献1に開示された技術を用いて、文字列の配置位置を変更する例を示す。図22(a)は、時刻tにおける文字列の配置を示す。また、図22(b)は、時刻tから時間αだけ経過し、表示範囲が変化したことを示す。表示範囲の変化により、文字列『東海道』は、配置位置が変更される。図22(b)は、特許文献1に開示された技術では、(1)文字列同士の重複を加味して位置を変更しないため、他の文字列と重なる。これに対し、実施の形態1に係る文字列配置描画装置によれば、このような問題を回避できる。
以上説明したように、実施の形態1に係る文字列配置描画装置の特徴は、文字列『NEED』との重なりがある配置候補点C(2)から配置した文字列、道路の角度変化が大きく可読性が低いC(3)から配置した文字列、表示範囲外に配置される配置候補点C(5)から配置した文字列に比べ、これらの問題がない配置候補点C(4)から配置した文字列の評価関数値が最も低くなっている点である。背景技術の欄に示した(1)〜(4)の問題がない場合、評価関数値が低くなり、(1)〜(4)のいずれかの問題がある場合には、評価関数値が高くなるので、最適な位置に文字列を配置することができる。
なお、文字列配置部17は、文字列の重なり等を考慮しながら、表示範囲の中心に文字列を移動させて配置するように構成できる。この構成によれば、文字列の配置位置の変更回数を減らすことができる。
なお、本願発明はその発明の範囲内において、実施の形態の任意の構成要素の変形、もしくは実施の形態の任意の構成要素の省略が可能である。
この発明は、文字列の可読性を向上させるとともに、文字の位置決めを高速に行うことができるので、カーナビゲーションシステムまたは携帯機器などで行われる地図表示に好適である。
11 文字列データ記憶部、12 文字列データ取得部、13 表示範囲データ記憶部、14 処理対象文字列特定部、15 候補点取得部、16 処理対象候補点特定部、17 文字列配置部、18 評価関数算出部、19 最小評価関数値保存部、20 文字列描画部、21 最小評価関数値データ記憶部、22 文字列配置データ記憶部、23 文字列間隔関数算出部、24 道路角度関数算出部、25 表示範囲関数算出部、26 評価関数値更新部。
Claims (9)
- 文字列を、当該文字列の配置候補点から道路ノード列に沿って配置する文字列配置部と、
前記文字列配置部で配置された文字列同士の間隔による前記文字列の可読性、および前記文字列と表示範囲との関係を評価する評価関数値を算出する評価関数算出部と、
前記評価関数算出部で算出された評価関数値を用いて前記文字列を描画する文字列描画部と、
を備えた文字列配置描画装置。 - 前記評価関数算出部は、前記文字列が沿う道路の角度変化を評価する評価関数値を算出し、
前記文字列描画部は、前記文字列同士の間隔による前記文字列の可読性、前記文字列と表示範囲との関係、および前記文字列が沿う道路の角度変化を評価する前記評価関数値を用いて前記文字列を描画することを特徴とする請求項1記載の文字列配置描画装置。 - 前記評価関数値を更新する評価関数値更新部を設けたことを特徴とする請求項1記載の文字列配置描画装置。
- 前記評価関数算出部と前記文字列描画部間に、最小の評価関数値および当該評価関数値に対応する前記文字列の配置を保存する評価関数値保存部を設けたことを特徴とする請求項1記載の文字列配置描画装置。
- 前記評価関数値保存部は、文字列同士の重なりを回避して前記文字列の可読性を高めるような評価関数値を保存し、前記文字列が沿う道路の角度変化を評価する評価関数値のうち平坦でない道路への文字列配置を回避するような評価関数値を保存すると共に、前記文字列と表示範囲との関係を評価する評価関数値のうち前記表示範囲外への前記文字列配置を回避するような評価関数値を保存することを特徴とする請求項4記載の文字列配置描画装置。
- 文字列データを記憶する文字列データ記憶部から処理対象とする前記文字列を取得して特定すると共に、前記文字列の配置位置を特定する処理対象文字列特定部を設けたことを特徴とする請求項1記載の文字列配置描画装置。
- 前記文字列データは、前記文字列の数、前記文字列が沿う道路ノード列および前記文字列の配置候補点を含むものであることを特徴とする請求項6記載の文字列配置描画装置。
- 前記表示範囲内に含まれる前記配置候補点を処理対象として選択する処理対象候補点特定部を設けたことを特徴とする請求項1記載の文字列配置描画装置。
- 前記文字列配置部は、表示範囲の中心に前記文字列を移動させて配置することを特徴とする請求項1記載の文字列配置描画装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2012/065245 WO2013186897A1 (ja) | 2012-06-14 | 2012-06-14 | 文字列配置描画装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2013186897A1 JPWO2013186897A1 (ja) | 2016-02-01 |
JP5893136B2 true JP5893136B2 (ja) | 2016-03-23 |
Family
ID=49757759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014521060A Expired - Fee Related JP5893136B2 (ja) | 2012-06-14 | 2012-06-14 | 文字列配置描画装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20150074503A1 (ja) |
JP (1) | JP5893136B2 (ja) |
CN (1) | CN104272368A (ja) |
DE (1) | DE112012006524T5 (ja) |
WO (1) | WO2013186897A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7261084B2 (ja) * | 2019-05-16 | 2023-04-19 | 株式会社アイシン | 地図表示システムおよび地図表示プログラム |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3209774B2 (ja) * | 1991-12-27 | 2001-09-17 | 富士通テン株式会社 | 地図表示装置 |
JP3170343B2 (ja) * | 1992-05-07 | 2001-05-28 | 日産自動車株式会社 | 車両用表示装置 |
JP3568621B2 (ja) * | 1995-04-20 | 2004-09-22 | 株式会社日立製作所 | 地図表示装置 |
JPH11288212A (ja) * | 1998-04-01 | 1999-10-19 | Hitachi Eng Co Ltd | ベクトル地図表示方法及び装置 |
JP2001208558A (ja) * | 1999-07-14 | 2001-08-03 | Equos Research Co Ltd | ナビゲーション方法,その装置,そのシステム |
JP2002297025A (ja) * | 2001-03-29 | 2002-10-09 | Clarion Co Ltd | 地図表示装置及び方法並びに地図表示用ソフトウェア |
JP2004318332A (ja) * | 2003-04-14 | 2004-11-11 | Sharp Corp | テキストデータ表示装置、携帯電話装置、テキストデータ表示方法、およびテキストデータ表示プログラム |
JP2005115174A (ja) * | 2003-10-09 | 2005-04-28 | Navitime Japan Co Ltd | 地図表示装置、地図表示方法および地図表示プログラム |
WO2006006243A1 (ja) * | 2004-07-14 | 2006-01-19 | Pasco Corporation | 文字列最適配置プログラム |
JP5203588B2 (ja) * | 2006-10-16 | 2013-06-05 | アルパイン株式会社 | 地図データ生成方法及び地図表示装置 |
-
2012
- 2012-06-14 DE DE112012006524.7T patent/DE112012006524T5/de not_active Ceased
- 2012-06-14 US US14/386,210 patent/US20150074503A1/en not_active Abandoned
- 2012-06-14 JP JP2014521060A patent/JP5893136B2/ja not_active Expired - Fee Related
- 2012-06-14 WO PCT/JP2012/065245 patent/WO2013186897A1/ja active Application Filing
- 2012-06-14 CN CN201280072782.9A patent/CN104272368A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20150074503A1 (en) | 2015-03-12 |
JPWO2013186897A1 (ja) | 2016-02-01 |
CN104272368A (zh) | 2015-01-07 |
WO2013186897A1 (ja) | 2013-12-19 |
DE112012006524T5 (de) | 2015-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102439606B1 (ko) | 전이 학습을 위한 기반 모델 결정 방법 및 그 방법을 지원하는 장치 | |
AU2015227269B2 (en) | Navigation directions between automatically determined starting points and selected destinations | |
JP6298322B2 (ja) | 経路探索装置、経路探索方法およびプログラム | |
JP5748856B2 (ja) | 文字列配置装置 | |
JP6246316B2 (ja) | 地図情報処理装置、地図情報処理方法及び更新データの調整方法 | |
US11118926B2 (en) | Computer-implemented method for recommending booths-to-visit | |
US20100329504A1 (en) | Detecting Geographic Features in Images Based on Invariant Components | |
Chen et al. | A subpixel mapping algorithm combining pixel-level and subpixel-level spatial dependences with binary integer programming | |
JP5893136B2 (ja) | 文字列配置描画装置 | |
JP6572672B2 (ja) | 経路グラフ生成方法、装置、及びプログラム | |
JP5805159B2 (ja) | 経路探索装置、経路探索方法、経路探索システム、及び経路探索プログラム | |
Lei et al. | A parallel annotation placement method for dense point of interest labels using hexagonal grid | |
US20220180183A1 (en) | Method, apparatus, and system for providing place category prediction | |
US20180066948A1 (en) | Alignment of visual indicators on navigational maps | |
JP4820231B2 (ja) | 経路案内装置、経路案内方法及び経路案内プログラム | |
US11125571B2 (en) | Action support device and action support method | |
JPWO2021131448A5 (ja) | ||
WO2021183128A1 (en) | Alternative navigation directions pre-generated when a user is likely to make a mistake in navigation | |
CN108573513B (zh) | 随机元素生成方法及随机元素生成装置 | |
JP2008096865A (ja) | 地図データ生成方法及び地図表示装置 | |
JP6582918B2 (ja) | 更新情報配信システム、更新情報配信方法、及び更新情報配信プログラム | |
CN112469971B (zh) | 用于评估导航应用性能的系统和方法 | |
TW201346219A (zh) | 特定區域之行動式導航系統及其路徑規劃方法 | |
CN111831928B (zh) | 一种poi排序方法及装置 | |
US9854106B1 (en) | Image forming device installation support server, method, and recording medium for calculating a score of a location for a new print shop |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160126 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160223 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5893136 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |