JPH02292686A - 画像処理装置 - Google Patents
画像処理装置Info
- Publication number
- JPH02292686A JPH02292686A JP1112820A JP11282089A JPH02292686A JP H02292686 A JPH02292686 A JP H02292686A JP 1112820 A JP1112820 A JP 1112820A JP 11282089 A JP11282089 A JP 11282089A JP H02292686 A JPH02292686 A JP H02292686A
- Authority
- JP
- Japan
- Prior art keywords
- data
- neuron
- output
- neural
- layer
- 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.)
- Pending
Links
Landscapes
- Image Analysis (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、いわゆるニューラルネットワークによって構
成され、図形のベクトルデータを用いてその図形を認識
する画像処理装置に関する。
成され、図形のベクトルデータを用いてその図形を認識
する画像処理装置に関する。
図形を記録するときのデータ形式として、ベク?ルデー
夕は、ラスタデータに比較して容量が少なく、また図形
の品質を保ちながら図形を拡大縮小あるいは変形して表
示することが容易であり、図形認識においてしばしば用
いられる。
夕は、ラスタデータに比較して容量が少なく、また図形
の品質を保ちながら図形を拡大縮小あるいは変形して表
示することが容易であり、図形認識においてしばしば用
いられる。
一方、ニューラルネットワークの概念を基礎とする画像
処理装置は、ニューラルネットワークの学習機能あるい
は連想機能のため、多様な画像認識が可能であり、また
高い認識率を得ることができる。ニューラルネットワー
クは、第2図に示す神経細胞モデル(以下、ニューロン
という)1を第3図に示すように並列に設けて層状に構
成される。ニューロン1において、外部から入力される
データor,、DI2、DI.、・・・DIllにはそ
れぞれ重みW1、W2、W3、・・・w7が掛けられ、
これらの総和と閾値θとが比較される。この比較方法と
しては種々のものが可能であるが、例えば、この総和が
閾値θ以上の時出力データDOがr1,となり、またこ
の総和が閾値θより小さい時出力データDOがr■,と
なるように定められる。
処理装置は、ニューラルネットワークの学習機能あるい
は連想機能のため、多様な画像認識が可能であり、また
高い認識率を得ることができる。ニューラルネットワー
クは、第2図に示す神経細胞モデル(以下、ニューロン
という)1を第3図に示すように並列に設けて層状に構
成される。ニューロン1において、外部から入力される
データor,、DI2、DI.、・・・DIllにはそ
れぞれ重みW1、W2、W3、・・・w7が掛けられ、
これらの総和と閾値θとが比較される。この比較方法と
しては種々のものが可能であるが、例えば、この総和が
閾値θ以上の時出力データDOがr1,となり、またこ
の総和が閾値θより小さい時出力データDOがr■,と
なるように定められる。
ニューロン1からなる層すなわちニューラルレイヤは、
通常複数個設けられ、このようなニューラルレイヤを備
えた画像処理装置に対する入力データは、第1層目のニ
ューラルレイヤに人力される。またこの人力データは図
形の画素データである。
通常複数個設けられ、このようなニューラルレイヤを備
えた画像処理装置に対する入力データは、第1層目のニ
ューラルレイヤに人力される。またこの人力データは図
形の画素データである。
〔発明が解決しようとする課題]
しかし、このような画像処理装置において、全画素デー
タから所望の認識処理を行うためには、膨大な個数のニ
ューロンが必要であり、実用的な装置を具現化すること
は困難であり、また、画素データそのものをニューラル
ネソトワークに入力するということ自体、生体系の処理
とは全く遊離した考え方である。
タから所望の認識処理を行うためには、膨大な個数のニ
ューロンが必要であり、実用的な装置を具現化すること
は困難であり、また、画素データそのものをニューラル
ネソトワークに入力するということ自体、生体系の処理
とは全く遊離した考え方である。
さらに従来はニューラルネットワークの構成と処理対象
データとの関係について確立した考え方はなく、確実に
所望の認識処理を実行する画像処理装置を構成すること
は困難であった。
データとの関係について確立した考え方はなく、確実に
所望の認識処理を実行する画像処理装置を構成すること
は困難であった。
本発明は、このような従来の問題点を解決すべく創案さ
れたもので、所望の認識処理を効率的かつ確実に実行し
得る画像処理装置を提供することを目的とする。
れたもので、所望の認識処理を効率的かつ確実に実行し
得る画像処理装置を提供することを目的とする。
〔課題を解決するための手段]
本発明に係る画像処理装置は、図形を構成する画素デー
タをベクトル化するベクトルデータ抽出手段と、このベ
クトルデータ抽出手段に接続され、入力されたデータに
所定の重みを乗じたものの総和と闇値との比較結果に応
したデータを出力するニューロンが並列的に設けられる
とともに、ベクトルデータの抽象度に応じた層構造のニ
ューラルレイヤを有し、そのベクトルデータに基づいて
図形を認識する手段とを備えたことを特徴としている。
タをベクトル化するベクトルデータ抽出手段と、このベ
クトルデータ抽出手段に接続され、入力されたデータに
所定の重みを乗じたものの総和と闇値との比較結果に応
したデータを出力するニューロンが並列的に設けられる
とともに、ベクトルデータの抽象度に応じた層構造のニ
ューラルレイヤを有し、そのベクトルデータに基づいて
図形を認識する手段とを備えたことを特徴としている。
ベクトルデータは、図形認識手段の所定のニューラルレ
イヤに入力され、図形認識が行われる。
イヤに入力され、図形認識が行われる。
図形認識手段は、図形認識のために必要最小限のニュー
ロンを有し、少ないメモリで高速かつ確実に図形認識を
行う。
ロンを有し、少ないメモリで高速かつ確実に図形認識を
行う。
以下図示実施例に基づいて本発明を説明する。
第1図は画像認識装置の概略的な構成を示す。
この画像処理装置は画像入力部200と、画像処理部3
00と、認識部100と、システムメモリ400を備え
、これらはシステムバスBを通じて相互に接続されると
ともに、CPU5QOに接続されている。画像入力部2
00にはイメージスキャナ等の入力機器とI/Oとを含
み、I/Oには適宜、データ圧縮手段、データ保持のた
めのメモリ等が含まれる。画像処理部300はベクトル
データ抽出手段である処理部310と、画像を保持する
フレームメモリ330とを備え、所望により内部に画像
入力部340が設けられる。認識部100は、後に詳述
するように、画像処理部300で得られた抽出データに
基づいて図形認識を行うものであり、ニューロンからな
る複数層のニューラルレイヤが構築され、このニューラ
ルレイヤの出力データを記憶するメモリを備える。
00と、認識部100と、システムメモリ400を備え
、これらはシステムバスBを通じて相互に接続されると
ともに、CPU5QOに接続されている。画像入力部2
00にはイメージスキャナ等の入力機器とI/Oとを含
み、I/Oには適宜、データ圧縮手段、データ保持のた
めのメモリ等が含まれる。画像処理部300はベクトル
データ抽出手段である処理部310と、画像を保持する
フレームメモリ330とを備え、所望により内部に画像
入力部340が設けられる。認識部100は、後に詳述
するように、画像処理部300で得られた抽出データに
基づいて図形認識を行うものであり、ニューロンからな
る複数層のニューラルレイヤが構築され、このニューラ
ルレイヤの出力データを記憶するメモリを備える。
第4図は画像処理部300における処理部310を示す
ものであり、処理部310は、フレームメモリ330か
らマルチブレクサ311を介して選択的に取り込んだデ
ータをローカルバスLBを通して近傍処理部312に転
送している。近傍処理部312はデータを所定近傍領域
(例えば3×3)単位でデータを保持し、これらのデー
タを並列に演算部320に入力する。演算部320は数
値演算部321および状態演算部325を存し、近傍処
理部312の出力は数値演算部321に入力される。数
値演算部321は、乗算部322、セレクタ323、統
合部324を順次接続してなり、微分その他のオペレー
タ処理や画像間演算は数値演算部321において行われ
る。数値演算は例えば各画素の濃度に乗数を乗じた後に
これを数値的に統合する処理を行うが、同一の画素には
異なる絶対値の乗数が掛けられることはないという発明
者の知見に基づき最前段に乗算部322が配置されてい
る。これによって乗算部のカーネル数は同時処理画素数
に等しい最小値とすることができ、こ秩にともなって後
段のセレクタ323、統合部324のゲート数も減少す
る。したがって数値演算部321は小規模回路で最大限
の機能をもつことかでき、処理速度も高速化される。
ものであり、処理部310は、フレームメモリ330か
らマルチブレクサ311を介して選択的に取り込んだデ
ータをローカルバスLBを通して近傍処理部312に転
送している。近傍処理部312はデータを所定近傍領域
(例えば3×3)単位でデータを保持し、これらのデー
タを並列に演算部320に入力する。演算部320は数
値演算部321および状態演算部325を存し、近傍処
理部312の出力は数値演算部321に入力される。数
値演算部321は、乗算部322、セレクタ323、統
合部324を順次接続してなり、微分その他のオペレー
タ処理や画像間演算は数値演算部321において行われ
る。数値演算は例えば各画素の濃度に乗数を乗じた後に
これを数値的に統合する処理を行うが、同一の画素には
異なる絶対値の乗数が掛けられることはないという発明
者の知見に基づき最前段に乗算部322が配置されてい
る。これによって乗算部のカーネル数は同時処理画素数
に等しい最小値とすることができ、こ秩にともなって後
段のセレクタ323、統合部324のゲート数も減少す
る。したがって数値演算部321は小規模回路で最大限
の機能をもつことかでき、処理速度も高速化される。
数値演算部321内のデータは状態演算部325に導か
れ、状態演算部325は、所定近傍領域内の画素に対し
て次のような判断または演算を行つ。
れ、状態演算部325は、所定近傍領域内の画素に対し
て次のような判断または演算を行つ。
1)中央画素が処理対象画素であるか否か。
ii)8近傍に中央画素と異なる濃度の画素が存在する
か否か。
か否か。
iii)8近傍の各画素が中央画素と同一か否か。
iv)オイラー数算出のためのTFDEの各個数。
■)所定パターンとの一致度。
■)その他。
このように数値演算とともに状態演算を並列的にしかも
別回路で行うことにより、各回路の効率化と高速化を図
ることができる。また状態演算部325の出力はそれ自
体が有効な特徴量であり、あるいは特@量抽出のための
有効なデータである。
別回路で行うことにより、各回路の効率化と高速化を図
ることができる。また状態演算部325の出力はそれ自
体が有効な特徴量であり、あるいは特@量抽出のための
有効なデータである。
状態演算部325の出力は変換部313に人力され、さ
らに特徴抽出や、積算、比較などの処理により特徴量が
求められる。
らに特徴抽出や、積算、比較などの処理により特徴量が
求められる。
変換部313はスタティックRAMなどの高速メモリの
出力の分岐にフルアダーなどの軽演算部を接続し、この
軽演算部の出力を高速メモリのデータ入力にフィードバ
ックしてなるものである。
出力の分岐にフルアダーなどの軽演算部を接続し、この
軽演算部の出力を高速メモリのデータ入力にフィードバ
ックしてなるものである。
このような構成により、同一データに同一演算を繰返し
施したり、データの積算、データの逐次比較等の複雑な
演算を小規模の回路において高速で行うことができる。
施したり、データの積算、データの逐次比較等の複雑な
演算を小規模の回路において高速で行うことができる。
演算部320、変換部313の出力は出力側のローカル
バスLBを通じて前記フレームメモリ330のいずれか
に戻されている。
バスLBを通じて前記フレームメモリ330のいずれか
に戻されている。
出力側のローカルバスLBには、さらに逐次処理部31
4が接続され、ラベリングや細線化などの逐次処理はこ
の逐次処理部で行われる。逐次処理部314は、ライン
メモリとラッチと論理部を備え、処理対象画素の1つ前
のラスクの処理後濃度を参照しつつ逐次処理を行う。
4が接続され、ラベリングや細線化などの逐次処理はこ
の逐次処理部で行われる。逐次処理部314は、ライン
メモリとラッチと論理部を備え、処理対象画素の1つ前
のラスクの処理後濃度を参照しつつ逐次処理を行う。
このような処理部においては、極めて多様な特徴量を高
速でもとめることができ、認識部100に貴重な特徴量
を供給し得る。なおフレームメモリ330としてデュア
ルボートメモリを採用すれば、データの続出し、書き込
みを極めて高速で行い得る。
速でもとめることができ、認識部100に貴重な特徴量
を供給し得る。なおフレームメモリ330としてデュア
ルボートメモリを採用すれば、データの続出し、書き込
みを極めて高速で行い得る。
このような画像処理装置において、処理対象画像の闇値
処理、2値化、輪郭抽出を行い、この輪郭のベクトルデ
ータを生成すれば、輪郭に関する特徴データを認識部1
00に与え得る。また画像の闇値処理、2値化、細線化
を行い、この細線化画像のベクトルデータを生成すれば
、各図形のストローク特徴等の形状的特徴データを認識
部100に与え得る。ベクトルデータの形態としては、
ベクトルポイントの座標を追跡順に配列したデータ、凸
凹の角部の個数および座標、穴の存否および個数、輪郭
長などが考えられる。これらのデータの生成には一部C
PUが使用される。
処理、2値化、輪郭抽出を行い、この輪郭のベクトルデ
ータを生成すれば、輪郭に関する特徴データを認識部1
00に与え得る。また画像の闇値処理、2値化、細線化
を行い、この細線化画像のベクトルデータを生成すれば
、各図形のストローク特徴等の形状的特徴データを認識
部100に与え得る。ベクトルデータの形態としては、
ベクトルポイントの座標を追跡順に配列したデータ、凸
凹の角部の個数および座標、穴の存否および個数、輪郭
長などが考えられる。これらのデータの生成には一部C
PUが使用される。
次に認識部lOOの構成を第5図に基づいて説明する。
認識部100は、システムバスBを介して、または認識
部100に直接接続された入力系、すなわち画像処理部
300から入力されたデータを処理し、処理結果を最終
出力データとして、データメモリ110に出力する。
部100に直接接続された入力系、すなわち画像処理部
300から入力されたデータを処理し、処理結果を最終
出力データとして、データメモリ110に出力する。
認識部IOOにはニューラルネットワークが構築される
。ニューラルネットワークの各ニューロンからの出力デ
ータDOは、前述したように、入力データと重みとの積
の総和が閾値θ以上の時「l」となり、またこの総和が
閾値θより小さい時「0」となるように定められる。す
なわち、DO=f((Σ(tL XDI+ )一〇)
(1)であり、ここでfは正規化関数である。
。ニューラルネットワークの各ニューロンからの出力デ
ータDOは、前述したように、入力データと重みとの積
の総和が閾値θ以上の時「l」となり、またこの総和が
閾値θより小さい時「0」となるように定められる。す
なわち、DO=f((Σ(tL XDI+ )一〇)
(1)であり、ここでfは正規化関数である。
認識部100は、ニューラルネットワークにおける連想
の作用を為す出力データ生成部120を有し、出力デー
タ生成部120においては、各二二一ロンについての線
型闇値関数(ΣW.A,−θ)の演算が行われる。出力
データ生成部120の各部はCPU500によって制御
される。
の作用を為す出力データ生成部120を有し、出力デー
タ生成部120においては、各二二一ロンについての線
型闇値関数(ΣW.A,−θ)の演算が行われる。出力
データ生成部120の各部はCPU500によって制御
される。
W.A,の乗算は出力データ生成部120における乗算
回路121において実行される。1回毎のW,A.の演
算結果は順次積算回路122に入力され、ΣW.A.の
演算が行われる。積算回路122は、加算回路104に
フリップフロップ105を帰還的に接続してなり、加算
結果を一旦フリップフロップ105に保持したのち、次
のW,A.の入力と保持された加算結果とを加算してい
くことにより積算を行う。ΣW,A,の演算結果は闇値
処理部123に入力され、(ΣW.A.一θ)の演算が
行われる。さらに闇値処理部123においては、(ΣW
.At−θ)の演算結果を正規化する等の処理を行い、
出力データとする。(ΣW.A.−θ)の演算結果はパ
ッファ106を介してデータメモリ110に入力される
。
回路121において実行される。1回毎のW,A.の演
算結果は順次積算回路122に入力され、ΣW.A.の
演算が行われる。積算回路122は、加算回路104に
フリップフロップ105を帰還的に接続してなり、加算
結果を一旦フリップフロップ105に保持したのち、次
のW,A.の入力と保持された加算結果とを加算してい
くことにより積算を行う。ΣW,A,の演算結果は闇値
処理部123に入力され、(ΣW.A.一θ)の演算が
行われる。さらに闇値処理部123においては、(ΣW
.At−θ)の演算結果を正規化する等の処理を行い、
出力データとする。(ΣW.A.−θ)の演算結果はパ
ッファ106を介してデータメモリ110に入力される
。
乗算回路121には重みのデータと、入力あるいは出力
データとが並列的に入力されるため、2系統の入力ライ
ンを有するが、バッファ106はそのうちの一方の入力
ラインに接続され、この入力ラインは人出力双方向のラ
インとして使用される。バッファ106は、データメモ
リ110から乗算回路121にデータが転送される際に
はハイインピーダンスとなる。
データとが並列的に入力されるため、2系統の入力ライ
ンを有するが、バッファ106はそのうちの一方の入力
ラインに接続され、この入力ラインは人出力双方向のラ
インとして使用される。バッファ106は、データメモ
リ110から乗算回路121にデータが転送される際に
はハイインピーダンスとなる。
各ニューラルレイヤのデータは、第1層についてはO次
入カデータおよび第1ニューラルレイヤの重みが人力さ
れ、第2層については1次出力データおよび第2ニュー
ラルレイヤの重みが入力される。すなわち第nニューラ
ルレイヤの出力(n次出力データ)は第(n+1)ニュ
ーラルレイヤの入力となる。データメモリ110におい
て、重みのデータはシナプス重みエリア111に格納さ
れ、入出力データは入出力データエリア112に格納さ
れる。また闇値処理部123に設定すべき各ニューロン
の闇値は、データメモリ110またはシステムメモリ1
01に格納され、各ニューロンについての演算を開始す
る前に闇値処理部123に転送される。
入カデータおよび第1ニューラルレイヤの重みが人力さ
れ、第2層については1次出力データおよび第2ニュー
ラルレイヤの重みが入力される。すなわち第nニューラ
ルレイヤの出力(n次出力データ)は第(n+1)ニュ
ーラルレイヤの入力となる。データメモリ110におい
て、重みのデータはシナプス重みエリア111に格納さ
れ、入出力データは入出力データエリア112に格納さ
れる。また闇値処理部123に設定すべき各ニューロン
の闇値は、データメモリ110またはシステムメモリ1
01に格納され、各ニューロンについての演算を開始す
る前に闇値処理部123に転送される。
次に、画像処理部300において行われる図形のベクト
ル化について説明する。
ル化について説明する。
本実施例においては、まず図形の境界画素が抽出サれ、
この境界画素がフリーマンのチェーンコードによって符
号化される。フリーマンのチェーンコードは、第6図に
示すように、対象画素の右側を「0」とし、反時計方向
に45度ずつ順次1〜7の番号を与えたもので、図形の
境界画素を一方向に順次辿るとき、各境界画素に対し次
の境界画素の方向がチェーンコードとして与えられる。
この境界画素がフリーマンのチェーンコードによって符
号化される。フリーマンのチェーンコードは、第6図に
示すように、対象画素の右側を「0」とし、反時計方向
に45度ずつ順次1〜7の番号を与えたもので、図形の
境界画素を一方向に順次辿るとき、各境界画素に対し次
の境界画素の方向がチェーンコードとして与えられる。
但し、チェーンコードと等価な符号により同様の処理を
行うことも勿論可能である。
行うことも勿論可能である。
第7図において、画像中に図形Fが存在し、これを通常
の左から右、上から下の走査により見るとき、最初に左
上の画素aが発見される。通常はこの画素aを起点にし
て反時計回りに境界画素を辿り、チェーンコード列を生
成する。チェーンコードは対象画素(aに注目している
とき、そのaが対象画素となる。)の次に存在する画素
がどの方向に存在するかを示す符号であり、第7図では
境界画素を辿るときに生じるチェーンコードをその境界
画素上に表示している。第7図の画素aからチェーンコ
ードを生成する作業を始めたときに最後の画素となるa
の右隣の画素bには、aの方向を指し示すチェーンコー
ドを与えておく。
の左から右、上から下の走査により見るとき、最初に左
上の画素aが発見される。通常はこの画素aを起点にし
て反時計回りに境界画素を辿り、チェーンコード列を生
成する。チェーンコードは対象画素(aに注目している
とき、そのaが対象画素となる。)の次に存在する画素
がどの方向に存在するかを示す符号であり、第7図では
境界画素を辿るときに生じるチェーンコードをその境界
画素上に表示している。第7図の画素aからチェーンコ
ードを生成する作業を始めたときに最後の画素となるa
の右隣の画素bには、aの方向を指し示すチェーンコー
ドを与えておく。
第7図から明らかなように、この図形のチェーンコード
はr66000766002222244444Jで与
えられ、例えば「66」の連続は下向の直線に「00」
の連続は水平右向きの直線に、「22」の連続は上向き
の直線に、また「44」の連続は水平左向の直線に対応
している。
はr66000766002222244444Jで与
えられ、例えば「66」の連続は下向の直線に「00」
の連続は水平右向きの直線に、「22」の連続は上向き
の直線に、また「44」の連続は水平左向の直線に対応
している。
第7図の図形をベクトル化する際、理想的には画素a→
画素aの下方の直角の角の画素C1→その右方の凹の直
角の隅の画素c2→その下方の直角の角の画素c3→そ
の右方の直角の角の画素c4→その上方の直角の角の画
素C,を順次ベクトルポイントとすればよいことが明ら
かである。そして、これらのベクトルポイントのうち角
(凸)の画素a.C+ + Cz+ C41 C
Sは連続したチェーンコード「66」、「00j1 「
22」、「44」が「2」だけ増加した(6→0も7を
法とすれば増加とみることができる。)位置に存在する
。
画素aの下方の直角の角の画素C1→その右方の凹の直
角の隅の画素c2→その下方の直角の角の画素c3→そ
の右方の直角の角の画素c4→その上方の直角の角の画
素C,を順次ベクトルポイントとすればよいことが明ら
かである。そして、これらのベクトルポイントのうち角
(凸)の画素a.C+ + Cz+ C41 C
Sは連続したチェーンコード「66」、「00j1 「
22」、「44」が「2」だけ増加した(6→0も7を
法とすれば増加とみることができる。)位置に存在する
。
このようなチェーンコードは図形の輪郭の折曲状況を反
映していることが分かる。
映していることが分かる。
なお第7図の凹の角部c2は前述のようにベクトルポイ
ントとして抽出すべきであるが、境界画素ではないため
、チェーンコードは付されていない。ここに凹の直角の
処理の困難さがあるが、これについては後述する。なお
同一チェーンコートの連続は直線を意味する。
ントとして抽出すべきであるが、境界画素ではないため
、チェーンコードは付されていない。ここに凹の直角の
処理の困難さがあるが、これについては後述する。なお
同一チェーンコートの連続は直線を意味する。
チェーンコードは図形の外周を反時計回りに取るものが
一般的であり、ここではまず外周を反時計回りに採った
チェーンコードを例にとって説明を進める。
一般的であり、ここではまず外周を反時計回りに採った
チェーンコードを例にとって説明を進める。
ある画素にチェーンコードkが与えられていた時、その
次の画素が採り得るチェーンコードk′は、次の画素が
境界画素である以上、kが偶数の場合k−2,k−3の
値をとることがなく、kが奇数の場合k−3の値はとり
得ない(但し、kは「7」を法とする)。例えば第6図
においてk=4の場合、k′はrl」、[2Jとはなり
得ない。
次の画素が採り得るチェーンコードk′は、次の画素が
境界画素である以上、kが偶数の場合k−2,k−3の
値をとることがなく、kが奇数の場合k−3の値はとり
得ない(但し、kは「7」を法とする)。例えば第6図
においてk=4の場合、k′はrl」、[2Jとはなり
得ない。
このように1つの境界画素のチェーンコードのみで次の
境界画素の方向の範囲が特定される。そしてk’ =k
+−2のときには「k゜」の画素は凸の直角の角になる
。この直角の角の画素はベクトルポイントとして採用す
る。
境界画素の方向の範囲が特定される。そしてk’ =k
+−2のときには「k゜」の画素は凸の直角の角になる
。この直角の角の画素はベクトルポイントとして採用す
る。
このように図形の特徴点となる角部を抽出することはベ
クトル化の処理で不可欠であるが、逆に直線部分または
直線に近似し得る部分において中途の画素がベクトルポ
イントとして抽出されないようにして、データ効率を高
めることもベクトル化の処理において重要である。
クトル化の処理で不可欠であるが、逆に直線部分または
直線に近似し得る部分において中途の画素がベクトルポ
イントとして抽出されないようにして、データ効率を高
めることもベクトル化の処理において重要である。
第8図は左斜め下方に延びる直線を示すものであり、チ
ェーンコード列はr5555555556」となってい
る。直線については、その両端の画素をベクトルポイン
トとし、中途の画素はベクトルポイントとすべきでない
。すなわち同一のチェーンコードが連続して存在した場
合、その連続の最初の画素aと、その連続が終了した後
の最初のチェーンコードに対応する画素bをベクトルポ
イントとすぺきである。これは水平、垂直、右下り、右
上り、左上りの直線についても同様である。
ェーンコード列はr5555555556」となってい
る。直線については、その両端の画素をベクトルポイン
トとし、中途の画素はベクトルポイントとすべきでない
。すなわち同一のチェーンコードが連続して存在した場
合、その連続の最初の画素aと、その連続が終了した後
の最初のチェーンコードに対応する画素bをベクトルポ
イントとすぺきである。これは水平、垂直、右下り、右
上り、左上りの直線についても同様である。
第9図は連続する符号a,b,cがr676Jであり、
その後にr 6 6 6一6 4の符号が続いている。
その後にr 6 6 6一6 4の符号が続いている。
これを一般化すると(k−1),k, (k1)(k
=o〜7。kは7を法とする。)の符号列の後に(k−
1)の符号が続くパターンであり、これは最初の「kj
と、(k−1)の連続の後の(k−1)以外の符号をベ
クトルポイントとする。第9図に示すように、符号ab
が構成する直線と、その後の符号’ 6 6−6 0
Jよりなる直線β2とは1画素偏位した平行な直線であ
り、このような1画素の偏位はデジタル図形では意味を
持たないことが多い。特に自然画像をデジタル化する際
、ある座標値は隣接する4画素のうちの1つに不連続に
割りふられるため、座標値のわずかな差が1画素の偏位
を生む。すなわち1画素偏位した連続2直線は、それを
折れ線として表示しても、2直線をさらに別の直線で結
ぶ段階状の直線として表示しても図形の再現性には影響
ない。しかも折線として表示した方がベクトルポイント
のデータ効率は高まる。また画素aの前の画素の符号が
aと同じkであった場合(画素a’ r7」)、これ
は前記の直線の処理となり、画素bの後の画素Cがベク
トルポイントとして抽出される。
=o〜7。kは7を法とする。)の符号列の後に(k−
1)の符号が続くパターンであり、これは最初の「kj
と、(k−1)の連続の後の(k−1)以外の符号をベ
クトルポイントとする。第9図に示すように、符号ab
が構成する直線と、その後の符号’ 6 6−6 0
Jよりなる直線β2とは1画素偏位した平行な直線であ
り、このような1画素の偏位はデジタル図形では意味を
持たないことが多い。特に自然画像をデジタル化する際
、ある座標値は隣接する4画素のうちの1つに不連続に
割りふられるため、座標値のわずかな差が1画素の偏位
を生む。すなわち1画素偏位した連続2直線は、それを
折れ線として表示しても、2直線をさらに別の直線で結
ぶ段階状の直線として表示しても図形の再現性には影響
ない。しかも折線として表示した方がベクトルポイント
のデータ効率は高まる。また画素aの前の画素の符号が
aと同じkであった場合(画素a’ r7」)、これ
は前記の直線の処理となり、画素bの後の画素Cがベク
トルポイントとして抽出される。
次に凹の直角部の処理について説明する。
第10図(a)は左下に開く、凹の直角部を示すもので
あり、チェーンコードは水平部分においてr−O O
7 ,と進んで隅の画素aに到り、その後垂直部分に移
って「66−・・」と進んでいる。この図で直角を規定
する画素は、水平部分の最後の2つの画素b, cと
垂直部分の最初の画素dである。これらのチェーンコー
ドはr076Jであり、チェーンコード列中にこの組合
せが生じたときは直ちに左下に開く凹の直角部分である
ことが判明する。ここでチェーンコードに変更を加え、
隅の画素aが含まれるようにする。第lO図(b)はチ
ェーンコードに変更を加えた結果を示すものであり、水
平部分の最後の画素Cを「7」から「6」に変更し、さ
らに隅の画素aにチェーンコード「6」を与えている。
あり、チェーンコードは水平部分においてr−O O
7 ,と進んで隅の画素aに到り、その後垂直部分に移
って「66−・・」と進んでいる。この図で直角を規定
する画素は、水平部分の最後の2つの画素b, cと
垂直部分の最初の画素dである。これらのチェーンコー
ドはr076Jであり、チェーンコード列中にこの組合
せが生じたときは直ちに左下に開く凹の直角部分である
ことが判明する。ここでチェーンコードに変更を加え、
隅の画素aが含まれるようにする。第lO図(b)はチ
ェーンコードに変更を加えた結果を示すものであり、水
平部分の最後の画素Cを「7」から「6」に変更し、さ
らに隅の画素aにチェーンコード「6」を与えている。
これはチェーンコードの組r076.を「0066」に
変更する操作に対応する。
変更する操作に対応する。
これらのチェーンコードの変更により、水平部分の最後
の画素Cが隅の画素aを指すことになり、隅の画素aが
垂直部分の最初の画素dを指すことになる。
の画素Cが隅の画素aを指すことになり、隅の画素aが
垂直部分の最初の画素dを指すことになる。
これはk,(k−1),(k−2)の符号列が存在する
ときこれをk, k,(k−2).(k−2)の符号
列に改め、最初の(k−2)をベクトルポイントとする
構文解釈ということができる。
ときこれをk, k,(k−2).(k−2)の符号
列に改め、最初の(k−2)をベクトルポイントとする
構文解釈ということができる。
このような凹の直角の隅の画素は図形の特徴を残すうえ
で不可欠であり、直角の両辺が水平または直角である場
合には、以上のような符号の追加が必要である。しかし
両辺が45度の{頃斜をもつときは凹の直角の隅は境界
画素として表われる。
で不可欠であり、直角の両辺が水平または直角である場
合には、以上のような符号の追加が必要である。しかし
両辺が45度の{頃斜をもつときは凹の直角の隅は境界
画素として表われる。
第11図において、凹の直角は符号「1」、「7」で示
されており(図中a,b)、直角の隅は符号「7」であ
る。これはk.(k−2) (k=t3,7。kは7
を法とする。)の符号列において(k−2)の符号をベ
クトルポイントとする構文解釈を意味する。
されており(図中a,b)、直角の隅は符号「7」であ
る。これはk.(k−2) (k=t3,7。kは7
を法とする。)の符号列において(k−2)の符号をベ
クトルポイントとする構文解釈を意味する。
このように凹の直角の隅は図形の特徴的な画素として抽
出されるが、同様に、凸部の直角の角、凸の鋭角の角は
特徴的な点として抽出すべきである。
出されるが、同様に、凸部の直角の角、凸の鋭角の角は
特徴的な点として抽出すべきである。
第12図は凸の直角の角を有する図形を示し、第13図
は凸の鋭角の角を有する図形を示す。
は凸の鋭角の角を有する図形を示す。
第12図では符号ab(r35」)が直角の角を表し、
第13図では符号ab(’25」)が凸の鋭角の角を表
す。これらの符号列をk,k’ と表現すると、 k’ =k+2またはk+4 k,k’ =O〜7 k,k’ は7を法とする。
第13図では符号ab(’25」)が凸の鋭角の角を表
す。これらの符号列をk,k’ と表現すると、 k’ =k+2またはk+4 k,k’ =O〜7 k,k’ は7を法とする。
となり、k“の符号の画素をベクトルポイントとすべき
である。
である。
以上は図形の外側の境界画素の構文解釈であるが、内側
の境界画素すなわち穴の構文解釈については、外側と反
対方向に境界画素を辿る符号を付せば、全く同様に処理
し得る。
の境界画素すなわち穴の構文解釈については、外側と反
対方向に境界画素を辿る符号を付せば、全く同様に処理
し得る。
第14図(a)は図形の長方形の内側に時計方向にチェ
ーンコードを付したものであり、チェーンコードはro
o07666544432221」 (最後の画素が先
頭の画素に続いているとする。
ーンコードを付したものであり、チェーンコードはro
o07666544432221」 (最後の画素が先
頭の画素に続いているとする。
)である。この符号列中には凹の直角を示す符号列r0
76J、「654」、r432J、r210Jが存在し
、前記と同様に処理すれば、それぞれr0066」、r
6644」、r4422,.+、[2200Jに改めら
れる。結果を第14図(b)に示す。
76J、「654」、r432J、r210Jが存在し
、前記と同様に処理すれば、それぞれr0066」、r
6644」、r4422,.+、[2200Jに改めら
れる。結果を第14図(b)に示す。
ここでチェーンコード列の生成方法の一例を示す。チェ
ーンコード列の生成に際しては、まずその最初の境界画
素を発見しなければならないが、走査方向を限定すれば
周囲の画素の状況により外側、内側、の最初の境界画素
を識別し得る。
ーンコード列の生成に際しては、まずその最初の境界画
素を発見しなければならないが、走査方向を限定すれば
周囲の画素の状況により外側、内側、の最初の境界画素
を識別し得る。
走査方向を左から右、上から下の通常の走査方向とした
時、第15図に示ように、上方および左方に画素が存在
しない境界画素aを外側の最初の境界画素として採用で
き、第16図に示すように左下に画素が存在しかつ下方
に画素が存在しない境界画素aを最初の境界画素として
採用し得る。
時、第15図に示ように、上方および左方に画素が存在
しない境界画素aを外側の最初の境界画素として採用で
き、第16図に示すように左下に画素が存在しかつ下方
に画素が存在しない境界画素aを最初の境界画素として
採用し得る。
最初の境界画素が発見されれば、前述のように、次の境
界画素が取り得るチェーンコードの値は一定範囲に限定
されるので、その範囲を反時計回りまたは時計回りに順
次境界画素を捜索する。ここに、外側境界画素に反時計
回りのチェーンコードを与えるときには、走査方向も反
時計回りとなり、時計回りのチェーンコードならば走査
方向も時計回りとなる。そして、内側境界画素のチェー
ンコードの生成は外側境界画素と同じアルゴリズムで処
理し得る。すなわち1つ前の境界画素のチェーンコード
がkであるとき、kが偶数ならばk−1の方向から順次
反時計回りに次の境界画素を捜し、最初に境界画素が発
見された方向をその境界画素のチェーンコードとすれば
、外側境界画素について反時計回りのチェーンコード生
成される。そしてkが奇数のときはk−2の方向から順
次反時計回りに次の境界画素を捜すことになる。このア
ルゴリズムでは全画面を1回走査するだけで全てのチェ
ーンコードが生成でき高能率であり、また境界画素が外
側か内側かを識別し得るので、ベクトル化されたデータ
から図形を再現し、その図形を塗りつぶす際の有力な情
報を得ることができる。
界画素が取り得るチェーンコードの値は一定範囲に限定
されるので、その範囲を反時計回りまたは時計回りに順
次境界画素を捜索する。ここに、外側境界画素に反時計
回りのチェーンコードを与えるときには、走査方向も反
時計回りとなり、時計回りのチェーンコードならば走査
方向も時計回りとなる。そして、内側境界画素のチェー
ンコードの生成は外側境界画素と同じアルゴリズムで処
理し得る。すなわち1つ前の境界画素のチェーンコード
がkであるとき、kが偶数ならばk−1の方向から順次
反時計回りに次の境界画素を捜し、最初に境界画素が発
見された方向をその境界画素のチェーンコードとすれば
、外側境界画素について反時計回りのチェーンコード生
成される。そしてkが奇数のときはk−2の方向から順
次反時計回りに次の境界画素を捜すことになる。このア
ルゴリズムでは全画面を1回走査するだけで全てのチェ
ーンコードが生成でき高能率であり、また境界画素が外
側か内側かを識別し得るので、ベクトル化されたデータ
から図形を再現し、その図形を塗りつぶす際の有力な情
報を得ることができる。
なお図形境界を前記とは逆方向に辿るチェーンコードを
符号としたときには、前記符号列の増減関係を逆転させ
れば全く等価な処理が可能であり、その他の等価な符号
について等価な処理を施し得ることはいうまでもない。
符号としたときには、前記符号列の増減関係を逆転させ
れば全く等価な処理が可能であり、その他の等価な符号
について等価な処理を施し得ることはいうまでもない。
以上のようにチェーンコードまたはこれと等価な符号か
ら図形の折曲状態を判定してベクトルポイントを抽出す
れば、複雑な角度演算など要することなくベクトルデー
タを生成でき、しかも用途に応じて適宜高品質の図形を
再現し得る。
ら図形の折曲状態を判定してベクトルポイントを抽出す
れば、複雑な角度演算など要することなくベクトルデー
タを生成でき、しかも用途に応じて適宜高品質の図形を
再現し得る。
なお、上記実施例においてベクトルデータは境界画素か
ら得られていたが、図形を細線化して得られた画素デー
タをベクトル化したものであってもよい。
ら得られていたが、図形を細線化して得られた画素デー
タをベクトル化したものであってもよい。
次に、図形のベクトルデータに基づいて図形認識を行う
ニューラルネットワークについて説明する。
ニューラルネットワークについて説明する。
ニューラルネットワークは認識部100 (第1図)に
構築され、後述するように、ベクトルデータの抽象度に
応じた層構造を有する。
構築され、後述するように、ベクトルデータの抽象度に
応じた層構造を有する。
実際にニューラルネットワークによって実行される処理
内容は極めて複雑であるが、極めて単純な論理演算が実
行されると仮定して、ニューラルネットワークの第1実
施例を説明するとともに、この発明の基本理念を解説す
る。
内容は極めて複雑であるが、極めて単純な論理演算が実
行されると仮定して、ニューラルネットワークの第1実
施例を説明するとともに、この発明の基本理念を解説す
る。
第17図(a)、(b)、(C)は学習の結果A・ (
B十〇) (2)の論理演算が実行さ
れるに到ったニューラルネットワークを示すものである
。第17図(a)、(b)は比較例を示し、第17図(
c)はニューラルネットワークの第1実施例を示す。
B十〇) (2)の論理演算が実行さ
れるに到ったニューラルネットワークを示すものである
。第17図(a)、(b)は比較例を示し、第17図(
c)はニューラルネットワークの第1実施例を示す。
第17図(a)は、初段のニューラルレイヤ20にデー
タ群10におけるA,B,Cの3データの全ての組合せ
の数23=8個のニューロン21〜2日が設けられ、第
2段のニューラルレイヤ30に初段ニューロン21〜2
8の出力のOR(論理和)を演算する1個のニューロン
31が設けられた構成を示している。図中、ニューロン
21〜28の上に付したro00jなどの数値はデータ
A,B,Cよりなるビットパターンを示し、これらのニ
ューロンはこのビットパターンが入力されるときに出力
「1」を出力する。このニューラルネットワークにおい
ては、ニューロン数が9、シナブス数(ニューロンに接
続される入力経路の数)が32であり、ニューロンおよ
びシナブスの効率が極めて低く、所要メモリ容量が大で
あるとともに処理時間も大である。
タ群10におけるA,B,Cの3データの全ての組合せ
の数23=8個のニューロン21〜2日が設けられ、第
2段のニューラルレイヤ30に初段ニューロン21〜2
8の出力のOR(論理和)を演算する1個のニューロン
31が設けられた構成を示している。図中、ニューロン
21〜28の上に付したro00jなどの数値はデータ
A,B,Cよりなるビットパターンを示し、これらのニ
ューロンはこのビットパターンが入力されるときに出力
「1」を出力する。このニューラルネットワークにおい
ては、ニューロン数が9、シナブス数(ニューロンに接
続される入力経路の数)が32であり、ニューロンおよ
びシナブスの効率が極めて低く、所要メモリ容量が大で
あるとともに処理時間も大である。
第17図(b)は(2)式を以下のように展開し、A−
B + A−C (
3)演算の単純化を図った例であり、初段ニューラルレ
イヤ20は、A−Bの演算を処理するためのニューロン
21..A−Cの演算を処理するためのニューロン22
を備える。第2段のニューラ・ルレイヤ30はニューロ
ン21、22の出力のORを求めるニューロン31を有
する。
B + A−C (
3)演算の単純化を図った例であり、初段ニューラルレ
イヤ20は、A−Bの演算を処理するためのニューロン
21..A−Cの演算を処理するためのニューロン22
を備える。第2段のニューラ・ルレイヤ30はニューロ
ン21、22の出力のORを求めるニューロン31を有
する。
ニューロン21においては、データA,B,Cに対する
重みW,〜W3は、例えばW+ = 1 , Wz=1
、W3=0に設定され、 AW+ +BWz +cw,≧2 (4)のときに
出力r1,を出力する。したがってこの場合、閾値θ=
2とされる。同様に、ニューロン22では、W4 =1
,Ws =O W6 =1, θ=2となる。一方
ニューロン3lでは、W? = 1 ,WI+= 1、
θ=1となる。
重みW,〜W3は、例えばW+ = 1 , Wz=1
、W3=0に設定され、 AW+ +BWz +cw,≧2 (4)のときに
出力r1,を出力する。したがってこの場合、閾値θ=
2とされる。同様に、ニューロン22では、W4 =1
,Ws =O W6 =1, θ=2となる。一方
ニューロン3lでは、W? = 1 ,WI+= 1、
θ=1となる。
第17図(b)のニューラルネットワークにおいて、ニ
ューロン数は3、シナプス数は8であり、第17図(a
)のニューラルネットワークに比較すれば、大゜幅にニ
ューロン効率、シナブス効率が向上している。しかし、
次に述べるように本発明によれば、さらにこれらの効率
が向上する。
ューロン数は3、シナプス数は8であり、第17図(a
)のニューラルネットワークに比較すれば、大゜幅にニ
ューロン効率、シナブス効率が向上している。しかし、
次に述べるように本発明によれば、さらにこれらの効率
が向上する。
第17図(C)は本発明のニューラルネットワークの第
1実施例を示すもので、この構成は、初段ニューラルレ
イヤ20および第2段ニューラルレイヤ30を有し、初
段ニューラルレイヤ20には、データB,Cのみが入力
され、そして第2段ニューラルレイヤ30には、データ
Aが直接入力される。初段ニューラルレイヤ20には、
(B+C)の演算を行うための1個のニューロン2lが
設けられ、第2段ニューラルレイヤ30には、A(B+
C)の演算を行うための1個のニューロン31が設けら
れる。ニューロン21は、例えば重みWI=l ,Wz
=1、θ−1に設定され、B W I十〇 W z≧
1 (5)のとき出力「IJを出力する。
1実施例を示すもので、この構成は、初段ニューラルレ
イヤ20および第2段ニューラルレイヤ30を有し、初
段ニューラルレイヤ20には、データB,Cのみが入力
され、そして第2段ニューラルレイヤ30には、データ
Aが直接入力される。初段ニューラルレイヤ20には、
(B+C)の演算を行うための1個のニューロン2lが
設けられ、第2段ニューラルレイヤ30には、A(B+
C)の演算を行うための1個のニューロン31が設けら
れる。ニューロン21は、例えば重みWI=l ,Wz
=1、θ−1に設定され、B W I十〇 W z≧
1 (5)のとき出力「IJを出力する。
一方ニューロン31は、例えば、W,=1、W,=1、
θ=2に設定され、ニューロン21の出力をY1とする
と、Y IW3+AW4 ≧2 (6)の
とき、出力r1」を出力ずる。この実施例においては、
ニューロン数2、シナブス数4であり、第17図(b)
の比較例よりも大幅にニューロン効率、シナブス効率が
向上している。
θ=2に設定され、ニューロン21の出力をY1とする
と、Y IW3+AW4 ≧2 (6)の
とき、出力r1」を出力ずる。この実施例においては、
ニューロン数2、シナブス数4であり、第17図(b)
の比較例よりも大幅にニューロン効率、シナブス効率が
向上している。
ここで本発明の第1の基本理念を解説する。
再び(2)弐に注目すると、データB,C、は1つの作
用素r+(OR)Jにより結合されており、データAは
、その演算結果に対して作用素「×(AND) 」で結
合されている。したがって本来データB,CとデータA
とは同一次元で評価すべきものではなく、それを敢えて
同一次元で評価しようとすると、第17図(a)、(b
)の比較例のように効率の低下を招来する。
用素r+(OR)Jにより結合されており、データAは
、その演算結果に対して作用素「×(AND) 」で結
合されている。したがって本来データB,CとデータA
とは同一次元で評価すべきものではなく、それを敢えて
同一次元で評価しようとすると、第17図(a)、(b
)の比較例のように効率の低下を招来する。
ここで、ニューロンの処理内容が下記(7)式の評価の
みであると仮定する。
みであると仮定する。
ΣW t’A +−θ (7)(た
だし、W,:重み、A、:入力、θ:閾値)そして、各
データについてその抽象度を定義できると仮定し、その
抽象度を「次数」と呼ぶ。
だし、W,:重み、A、:入力、θ:閾値)そして、各
データについてその抽象度を定義できると仮定し、その
抽象度を「次数」と呼ぶ。
この次数は、1個のニューロンにおける入力データに対
し、出力データが1次だけ次数が増加すると定義する。
し、出力データが1次だけ次数が増加すると定義する。
また、1つの作用素により結合されたデータ相互は同一
次数であると定義する。
次数であると定義する。
このような定義によると、(2)弐の場合、データB,
Cは同一次数であり、データAはそれよりも次数が1次
だけ高い。ここでデータB,Cの次数として「0」を与
えるとすると、データAの次数は「1」である。
Cは同一次数であり、データAはそれよりも次数が1次
だけ高い。ここでデータB,Cの次数として「0」を与
えるとすると、データAの次数は「1」である。
このデータの次数とニューラルレイヤの階層との関係を
考えると、第17図(c)において、ニューラルレイヤ
20にはO次のデータのみが入力され、ニューラルレイ
ヤ30には1次のデータのみが入力されている。したが
って、ニューラルレイヤ20、30を入力データの次数
に対応づけ得ることが明らかであり、以後ニューラルレ
イヤにも入力データと同一の次数を定義するものとする
。
考えると、第17図(c)において、ニューラルレイヤ
20にはO次のデータのみが入力され、ニューラルレイ
ヤ30には1次のデータのみが入力されている。したが
って、ニューラルレイヤ20、30を入力データの次数
に対応づけ得ることが明らかであり、以後ニューラルレ
イヤにも入力データと同一の次数を定義するものとする
。
そして、ニューラルネットワークに入力すべきデータ群
をその次数に応じて分類し、各次数のデータをそれに対
応した次数のニューラルレイヤに人力することによって
、ニューロン効l、シナプス効率が最適化する。
をその次数に応じて分類し、各次数のデータをそれに対
応した次数のニューラルレイヤに人力することによって
、ニューロン効l、シナプス効率が最適化する。
また、第17図(a)、(b)に関連して説明したよう
に、高次のデータを低次数化して処理することも可能で
あり、この場合にはニューロン効率、シナプス効率が低
下する。したがって各データの次数は、そのデータがと
り得る最も高い次数を基準とすべきである。
に、高次のデータを低次数化して処理することも可能で
あり、この場合にはニューロン効率、シナプス効率が低
下する。したがって各データの次数は、そのデータがと
り得る最も高い次数を基準とすべきである。
なお、(A+B) ・Bのように1つのデータが複数
の次数にわたって使用されることもあり、この場合、1
つのデータを複数のニューラルレイヤに入力するように
してもよい。
の次数にわたって使用されることもあり、この場合、1
つのデータを複数のニューラルレイヤに入力するように
してもよい。
次数の本来の意味である抽象度をより分かり易く説明す
る例として、第18図(a)〜(C)に図形の端点を判
断する構成を示す。
る例として、第18図(a)〜(C)に図形の端点を判
断する構成を示す。
図形の端点のとらえ方は種々考えられるが、ここでは、
3×3コンポゾユーション(第18図(a))において
、第18図(b) (i) 〜(viii)のいずれか
のパターンが生じたときに、中央画素(第18図(a)
の画素E)は端点であるとする。
3×3コンポゾユーション(第18図(a))において
、第18図(b) (i) 〜(viii)のいずれか
のパターンが生じたときに、中央画素(第18図(a)
の画素E)は端点であるとする。
この端点の判断は中央画素以外の画素A−D,F〜Iの
いずれか1つが図形濃度(例えば「1」)であり、かつ
中央画素Eが図形濃度であるときに「端点」、それ以外
のときに「端点てない」とする。
いずれか1つが図形濃度(例えば「1」)であり、かつ
中央画素Eが図形濃度であるときに「端点」、それ以外
のときに「端点てない」とする。
この判断のためのニューラルネットワークは例えば第1
8図(C)のように構成され、この図はニューラルネッ
トワークの第2実施例を示す。このニューラルネットワ
ークは、8個のニューロン21〜28を有する初段ニュ
ーラルレイヤ20、および1個のニューロン31を有す
る第2段ニューラルレイヤ30を有し、画素A−D,F
〜Iのデータが初段ニューラルレイヤ20に、画素Eの
データが第2段ニューラルレイヤ30に入力されている
。
8図(C)のように構成され、この図はニューラルネッ
トワークの第2実施例を示す。このニューラルネットワ
ークは、8個のニューロン21〜28を有する初段ニュ
ーラルレイヤ20、および1個のニューロン31を有す
る第2段ニューラルレイヤ30を有し、画素A−D,F
〜Iのデータが初段ニューラルレイヤ20に、画素Eの
データが第2段ニューラルレイヤ30に入力されている
。
初段ニューラルレイヤのニューロン21〜28はそれぞ
れAのみ、Bのみ、Cのみ・・・が図形画素「1」であ
ることを判別し、第2段ニューラルレイヤ30のニュー
ロン31は、ニューロン21〜28のいずれかが「1」
を出力し、かつEが図形画素「1」であるときに出力「
1」を出力する。
れAのみ、Bのみ、Cのみ・・・が図形画素「1」であ
ることを判別し、第2段ニューラルレイヤ30のニュー
ロン31は、ニューロン21〜28のいずれかが「1」
を出力し、かつEが図形画素「1」であるときに出力「
1」を出力する。
ここで各画素データA−D,F〜■を0次データと考え
ると、ニューロン31の出力は2次データとなる。した
がって、各画素のデータをO次データと考えた場合、端
点データは2次データとして取扱い得ることが分かる。
ると、ニューロン31の出力は2次データとなる。した
がって、各画素のデータをO次データと考えた場合、端
点データは2次データとして取扱い得ることが分かる。
画像処理部300からは、グループ数、六数、オイラー
数、テクスチャ特徴量等種々のデータが出力されるが、
これらデータの次数を考慮し最適なニューラルレイヤに
直接入力すべきである。
数、テクスチャ特徴量等種々のデータが出力されるが、
これらデータの次数を考慮し最適なニューラルレイヤに
直接入力すべきである。
第6図〜第16図を参照して説明したベクトル化された
画素データの場合、ベクトルポイントすなわち角部の画
素データは、他の画素データに比較して抽象度が高い。
画素データの場合、ベクトルポイントすなわち角部の画
素データは、他の画素データに比較して抽象度が高い。
すなわち、他の画素データがO次データであるのに対し
てベクトルポイントはより高次のデータであり、ニュー
ラルネットワークにおいて他の画素データは初段のニュ
ーラルレイヤに入力され、ベクトルポイントの画素デー
タは後段のニューラルレイヤに入力されるべきである。
てベクトルポイントはより高次のデータであり、ニュー
ラルネットワークにおいて他の画素データは初段のニュ
ーラルレイヤに入力され、ベクトルポイントの画素デー
タは後段のニューラルレイヤに入力されるべきである。
第19図(a)はニューラルネットワークの第3実施例
を示し、この実施例においてニューラルネットワークは
、データ群10とニューラルレイヤ20、90とを有し
、レイヤ90は出力データを認識部100に出力する出
力レイヤとなっている。
を示し、この実施例においてニューラルネットワークは
、データ群10とニューラルレイヤ20、90とを有し
、レイヤ90は出力データを認識部100に出力する出
力レイヤとなっている。
データ群10は、第1グループのデータ11、12、1
3・・・と、第2グループのデータ14、l5、l6・
・・とからなる。すなわちデータ群10のデータは、そ
の次数に応じて第1および第2グループの2種頻に分類
されている。
3・・・と、第2グループのデータ14、l5、l6・
・・とからなる。すなわちデータ群10のデータは、そ
の次数に応じて第1および第2グループの2種頻に分類
されている。
ニューラルレイヤ20はニューロン2L22、23・・
・を有し、また出力レイヤ90はニューロン9l、92
、93・・・を有する。ニューラルレイヤ20の各ニュ
ーロンは出力レイヤ90の各ニューロンに接続される。
・を有し、また出力レイヤ90はニューロン9l、92
、93・・・を有する。ニューラルレイヤ20の各ニュ
ーロンは出力レイヤ90の各ニューロンに接続される。
第1グループのデータ11、12、13・・・はニュー
ラルレイヤ20の各ニューロンにそれぞれ入力され、第
2グループのデータ14、l5、16・・・は出力レイ
ヤ90の各ニューロンにそれぞれ入力される。
ラルレイヤ20の各ニューロンにそれぞれ入力され、第
2グループのデータ14、l5、16・・・は出力レイ
ヤ90の各ニューロンにそれぞれ入力される。
ニューラルレイヤ20の各ニューロンは、例えば上記(
1)弐に示されるように、入力された各データに重みを
乗じたものの総和と闇値とを比較し、この比較結果に応
じて、出力データ「1」または「0」を出力する。出力
レイヤ90の各ニューロンは、ニューラルレイヤ20の
各ニューロンおよび第2グループのデータl4、15、
l6・・・にそれぞれ重みを乗じたものの総和を求め、
この総和と闇値との比較結果に応じて、ニューラルレイ
ヤ20のニューロンと同様に「1」または「0」のデー
タを出力する。
1)弐に示されるように、入力された各データに重みを
乗じたものの総和と闇値とを比較し、この比較結果に応
じて、出力データ「1」または「0」を出力する。出力
レイヤ90の各ニューロンは、ニューラルレイヤ20の
各ニューロンおよび第2グループのデータl4、15、
l6・・・にそれぞれ重みを乗じたものの総和を求め、
この総和と闇値との比較結果に応じて、ニューラルレイ
ヤ20のニューロンと同様に「1」または「0」のデー
タを出力する。
第1グループのデータ11、l2、13・・・は、例え
ば、画素が「1」 (例えば黒)か「0」(例えば白)
かを示すO次データであり、また第2グループのデータ
14、15、16・・・は、画像の特徴を示す高次のデ
ータである。
ば、画素が「1」 (例えば黒)か「0」(例えば白)
かを示すO次データであり、また第2グループのデータ
14、15、16・・・は、画像の特徴を示す高次のデ
ータである。
しかして第3実施例において、第1グループのデータす
なわち低次のデータは、ニューラルレイヤ20のニュー
ロンに入力され、第2グループのデータすなわち高次の
データは、出力レイヤ90のニューロンに入力される。
なわち低次のデータは、ニューラルレイヤ20のニュー
ロンに入力され、第2グループのデータすなわち高次の
データは、出力レイヤ90のニューロンに入力される。
したがって、ニューラルレイヤ20のニューロンは、よ
り低次の処理すなわち例えば画素そのもののデータに対
する処理を行い、出力レイヤ90のニューロンは、より
高次の処理すなわち例えば画素の持つ様々な性質等に対
する処理を行う。
り低次の処理すなわち例えば画素そのもののデータに対
する処理を行い、出力レイヤ90のニューロンは、より
高次の処理すなわち例えば画素の持つ様々な性質等に対
する処理を行う。
このように、第3実施例においては、高次のデータが直
接出力レイヤ90に入力され、ニューラルレイヤ20に
は入力されないので、シナブス数すなわち入力要素とニ
ューロンあるいはニューロン同士の接続部の数は減少し
、またニューロン数も減少する。シナプス数が少なくな
ると、ニューロンにとって演算回数が減少するために、
演算速度が上昇し、また重みデータ数も減少するので、
メモリ容量も小さくてすむ。また、ニューロン数が少な
くなると、闇値の数も少なくてすみ、これによりメモリ
容量が小さくなるとともに、演算回数も少なくなり演算
速度が上昇する。しかして本実施例によれば、小さいメ
モリ容量でかつ高速の演算処理が可能になり、単純な回
路で効率の高い画像処理装置が得られる。
接出力レイヤ90に入力され、ニューラルレイヤ20に
は入力されないので、シナブス数すなわち入力要素とニ
ューロンあるいはニューロン同士の接続部の数は減少し
、またニューロン数も減少する。シナプス数が少なくな
ると、ニューロンにとって演算回数が減少するために、
演算速度が上昇し、また重みデータ数も減少するので、
メモリ容量も小さくてすむ。また、ニューロン数が少な
くなると、闇値の数も少なくてすみ、これによりメモリ
容量が小さくなるとともに、演算回数も少なくなり演算
速度が上昇する。しかして本実施例によれば、小さいメ
モリ容量でかつ高速の演算処理が可能になり、単純な回
路で効率の高い画像処理装置が得られる。
第19図(b)はニューラルネットワークの第4実施例
を示し、この実施例におけるデータ処理装置は、3つの
グループの入力データ群10と、ニューラルレイヤ20
、30および出力レイヤ90を有する。
を示し、この実施例におけるデータ処理装置は、3つの
グループの入力データ群10と、ニューラルレイヤ20
、30および出力レイヤ90を有する。
入力データ群10は、第1グループのデータ11、12
、l3・・・と、第2グループのデータ14、15、l
6・・・と、第3グループのデータ17、18、19・
・・とを備える。すなわち入力データ群は、第3実施例
と異なり、3種類に分類されている。第1のニューラル
レイヤ20はニューロン2l、22、23・・・を有し
、また第2のニューラルレイヤ30はニューロン31、
32、33・・・を有する。出力レイヤ90は、ニュー
ロン91、92、93・・・を存する。第1のニューラ
ルレイヤ20の各ニューロンは、第2のニヱーラルレイ
ヤ30の各ニューロンに、また第2のニューラルレイヤ
30の各ニューロンは、出力レイヤ90の各ニューロン
にそれぞれ接続される。
、l3・・・と、第2グループのデータ14、15、l
6・・・と、第3グループのデータ17、18、19・
・・とを備える。すなわち入力データ群は、第3実施例
と異なり、3種類に分類されている。第1のニューラル
レイヤ20はニューロン2l、22、23・・・を有し
、また第2のニューラルレイヤ30はニューロン31、
32、33・・・を有する。出力レイヤ90は、ニュー
ロン91、92、93・・・を存する。第1のニューラ
ルレイヤ20の各ニューロンは、第2のニヱーラルレイ
ヤ30の各ニューロンに、また第2のニューラルレイヤ
30の各ニューロンは、出力レイヤ90の各ニューロン
にそれぞれ接続される。
第1グループのデータ11、l2、13・・・は第1の
ニューラルレイヤ20の各ニューロンに、第2グループ
のデータ14、15、16・・・は第2のニューラルレ
イヤ30の各ニューロンに、第3グループのデータ17
、18、19・・・は出力レイヤ90の各ニューロンに
それぞれ接続される。
ニューラルレイヤ20の各ニューロンに、第2グループ
のデータ14、15、16・・・は第2のニューラルレ
イヤ30の各ニューロンに、第3グループのデータ17
、18、19・・・は出力レイヤ90の各ニューロンに
それぞれ接続される。
各ニューロンは、第3実施例と同様に、例えば上記(]
)式に従い、入力された各データに応じて、出力データ
「l」または「O」を出力する。 第1グループのデー
タ11、l2、l3・・・はO次データ、第2グループ
のデータl4、15、16・・・は1次データ、第3グ
ループのデータl7、18、19・・・は2次データで
ある。すなわち、第2のニューラルレイヤ30には高次
のデータが入力され、出力レイヤ90にはさらに高次の
データが入力される。
)式に従い、入力された各データに応じて、出力データ
「l」または「O」を出力する。 第1グループのデー
タ11、l2、l3・・・はO次データ、第2グループ
のデータl4、15、16・・・は1次データ、第3グ
ループのデータl7、18、19・・・は2次データで
ある。すなわち、第2のニューラルレイヤ30には高次
のデータが入力され、出力レイヤ90にはさらに高次の
データが入力される。
この第4実施例においても、第3実施例と同様に、シナ
プス数は減少し、またニューロン数も減少する。したが
って、第3実施例と同様な効果が得られる。
プス数は減少し、またニューロン数も減少する。したが
って、第3実施例と同様な効果が得られる。
第20図(a)、(b)はニューラルネットワークの第
5実施例を比較例とともに表したものであり、この例は
入力データを論理演算 (AeB) e(CeD) に従って処理する場合を示す。なおここで、eは「排他
的論理和」を示し、またA,B,C,Dは「l」または
[OJのデジタル値であり、この論理演算の結果も「1
」または「0」のデジタル値として出力されるとして説
明する。
5実施例を比較例とともに表したものであり、この例は
入力データを論理演算 (AeB) e(CeD) に従って処理する場合を示す。なおここで、eは「排他
的論理和」を示し、またA,B,C,Dは「l」または
[OJのデジタル値であり、この論理演算の結果も「1
」または「0」のデジタル値として出力されるとして説
明する。
第20図(a)は比較例を示し、この装置は入力データ
を通過させるための入力データ群10と第1および第2
のニューラルレイヤ20、30と出力レイヤ90とを存
する。入力データ群10は入力データA,B,C,Dか
らなる。第1のニューラルレイヤ20は4個のニューロ
72l,22、23、24を有し、第2のニューラルレ
イヤ30は4個のニューロン3l、32、33、34を
有する。各データA−Dは、それぞれ第1のニューラル
レイヤ20の各ニューロンに入力され、第1のニューラ
ルレイヤ20の各ニューロンはそれぞれ第2のニューラ
ルレイヤ30の各ニューロンに接続される。一方、出力
レイヤ90は1個のニューロン9Iを有し、このニュー
ロン91には、第2のニューラルレイヤ20の各ニュー
ロンがそれぞれ接続される。
を通過させるための入力データ群10と第1および第2
のニューラルレイヤ20、30と出力レイヤ90とを存
する。入力データ群10は入力データA,B,C,Dか
らなる。第1のニューラルレイヤ20は4個のニューロ
72l,22、23、24を有し、第2のニューラルレ
イヤ30は4個のニューロン3l、32、33、34を
有する。各データA−Dは、それぞれ第1のニューラル
レイヤ20の各ニューロンに入力され、第1のニューラ
ルレイヤ20の各ニューロンはそれぞれ第2のニューラ
ルレイヤ30の各ニューロンに接続される。一方、出力
レイヤ90は1個のニューロン9Iを有し、このニュー
ロン91には、第2のニューラルレイヤ20の各ニュー
ロンがそれぞれ接続される。
第1のニエーラルレイヤ20において、各ニューロン2
lは各入力データに対して乗じられる重みと闇値とを有
し、上記(1)式に従い、各人力データと重みの積の総
和が闇値以上の時出力データ「1」を出力し、この総和
が閾値θよりも小さい時出力データ「0」を出力する。
lは各入力データに対して乗じられる重みと闇値とを有
し、上記(1)式に従い、各人力データと重みの積の総
和が闇値以上の時出力データ「1」を出力し、この総和
が閾値θよりも小さい時出力データ「0」を出力する。
同様にニューロン22、23、24も各入力データに応
じて、「1」または「0」を出力する。第2のニューラ
ルレイヤ30においても同様に、各ニューロンは、入カ
データに応じて「1jまたは「0」を出力する。
じて、「1」または「0」を出力する。第2のニューラ
ルレイヤ30においても同様に、各ニューロンは、入カ
データに応じて「1jまたは「0」を出力する。
出力レイヤ90のニューロン91も同様に、第2のニュ
ーラルレイヤ30のニューロンからの出力データに応じ
て、「1」または「0」のデータを出力する。
ーラルレイヤ30のニューロンからの出力データに応じ
て、「1」または「0」のデータを出力する。
サテ論理演算(AeB)$ (CeD)(7)演算結果
は、データA,Bが不一致で、かつC,Dが一致すると
き、またA,Bが一致し、かっC,Dが不一致のとき、
r1,となる。それ以外の場合は「0」となる。このた
め、第20図(a)においては、各ニューロンは次のよ
うに構成される。
は、データA,Bが不一致で、かつC,Dが一致すると
き、またA,Bが一致し、かっC,Dが不一致のとき、
r1,となる。それ以外の場合は「0」となる。このた
め、第20図(a)においては、各ニューロンは次のよ
うに構成される。
第1のニューラルレイヤ20において、ニューロン21
,22、23、24は、A, B..C, Dを4ビッ
トパターンで表した場合、それぞれ「01 XXJ、r
loxx」、rxxo1j,rxx10」の時r1,を
出力し、それ以外の場合[Ojを出力する。ここで、「
xxJはそのデータを無視することを意味する。一方、
第2のニューラルレイヤ30において、ニューロン3l
は、第1のニューラルレイヤ20のニューロン21のみ
が「1」を出力する時rl,を出力し、それ以外の時「
0」を出力する。またニューロン32は、第1のニュー
ラルレイヤ20のニューロン22のみが「1」を出力す
る時「1」を出力し、それ以外の時「0」を出力する。
,22、23、24は、A, B..C, Dを4ビッ
トパターンで表した場合、それぞれ「01 XXJ、r
loxx」、rxxo1j,rxx10」の時r1,を
出力し、それ以外の場合[Ojを出力する。ここで、「
xxJはそのデータを無視することを意味する。一方、
第2のニューラルレイヤ30において、ニューロン3l
は、第1のニューラルレイヤ20のニューロン21のみ
が「1」を出力する時rl,を出力し、それ以外の時「
0」を出力する。またニューロン32は、第1のニュー
ラルレイヤ20のニューロン22のみが「1」を出力す
る時「1」を出力し、それ以外の時「0」を出力する。
同様にして、ニューロン33は、第1のニューラルレイ
ヤ20のニューロン23のみがr1,を出力する時「1
」を出力し、またニューロン34は、第1のニューラル
レイヤ20のニューロン24のみがrlJを出力する時
「1」を出力する。一方、出力レイヤ90のニューロン
91は、第2のニューラルレイヤ30のニューロンの少
なくともひとつが「1」を出力する時「l」を出力する
。
ヤ20のニューロン23のみがr1,を出力する時「1
」を出力し、またニューロン34は、第1のニューラル
レイヤ20のニューロン24のみがrlJを出力する時
「1」を出力する。一方、出力レイヤ90のニューロン
91は、第2のニューラルレイヤ30のニューロンの少
なくともひとつが「1」を出力する時「l」を出力する
。
したがって、A,B,C,Dの入力データがビットパタ
ーンでr O O O ]. Jの場合、第1のニュー
ラルレイヤ20においてニューロン23のみが「1」を
出力し、他のニューロン2l、22、24が「0」を出
力する。この結果、第2のニューラルレイヤ30におい
てニューロン33が「1」を出力することとなり、出力
レイヤ90の二二一ロン9lが「l」を出力する。同様
にしてA,B、C,Dが、r0010J,ro100J
、「1000」、r1110J、rll01,、「10
11」、ro111」の場合、第2のニューラルレイヤ
30において、いずれかのニューロンが「1」を出力し
、出力レイヤ90のニューロン91が「1」を出力する
。
ーンでr O O O ]. Jの場合、第1のニュー
ラルレイヤ20においてニューロン23のみが「1」を
出力し、他のニューロン2l、22、24が「0」を出
力する。この結果、第2のニューラルレイヤ30におい
てニューロン33が「1」を出力することとなり、出力
レイヤ90の二二一ロン9lが「l」を出力する。同様
にしてA,B、C,Dが、r0010J,ro100J
、「1000」、r1110J、rll01,、「10
11」、ro111」の場合、第2のニューラルレイヤ
30において、いずれかのニューロンが「1」を出力し
、出力レイヤ90のニューロン91が「1」を出力する
。
第20図(b)はニューラルネットワークの第5の実施
例を示し、この装置は入力データ群10と第1、第2お
よび第3のニューラルレイヤ20、30、40と出力レ
イヤ90と杏有する。入力データ群10は、入力データ
ASB,C,Dからなる。第1のニューラルレイヤ20
は4個のニューロン21、22、23、24、第2のニ
ューラルレイヤ30は2個のニューロン31、32、第
3のニューラルレイヤ40は2個のニューロン41、4
2、出力レイヤ90は1個のニューロン91を有する。
例を示し、この装置は入力データ群10と第1、第2お
よび第3のニューラルレイヤ20、30、40と出力レ
イヤ90と杏有する。入力データ群10は、入力データ
ASB,C,Dからなる。第1のニューラルレイヤ20
は4個のニューロン21、22、23、24、第2のニ
ューラルレイヤ30は2個のニューロン31、32、第
3のニューラルレイヤ40は2個のニューロン41、4
2、出力レイヤ90は1個のニューロン91を有する。
入力データ群のデータA−Dは、それぞれ第1のニュー
ラルレイヤ20の各ニューロンに入力され、第1のニュ
ーラルレイヤ20の各ニューロンはそれぞれ第2のニュ
ーラルレイヤ30の各ニューロンに接続される。第2の
ニューラルレイヤ30の各ニューロンは第3のニューラ
ルレイヤ40の各ニューロンに接続され、第3のニュー
ラルレイヤ40の各ニューロンは出力レイヤ9oのニュ
ーロンに接続される。
ラルレイヤ20の各ニューロンに入力され、第1のニュ
ーラルレイヤ20の各ニューロンはそれぞれ第2のニュ
ーラルレイヤ30の各ニューロンに接続される。第2の
ニューラルレイヤ30の各ニューロンは第3のニューラ
ルレイヤ40の各ニューロンに接続され、第3のニュー
ラルレイヤ40の各ニューロンは出力レイヤ9oのニュ
ーロンに接続される。
各ニューラルレイヤ20、30、40および出力レイヤ
90における各ニューロンは、第20図(a)の場合と
同様に、入力されるデータに応じて「1」または「0」
を出力する。
90における各ニューロンは、第20図(a)の場合と
同様に、入力されるデータに応じて「1」または「0」
を出力する。
第1のニューラルレイヤ20において、ニューロン21
、22、23、24は、A,B,CXDを4ビットパタ
ーンで表した場合、それぞれ「OIXXJ、rloxx
」、rxxo1」、rXX10」の時「1」を出力し、
それ以外の場合「0」を出力する。一方、第2のニュー
ラルレイヤ30において、ニューロン31は、第1のニ
ューラルレイヤ20のニューロン21または22が「l
」を出力する時「1」を出力し、それ以外の時「0」を
出力する。またニューロン32は、第1のニューラルレ
イヤ20のニューロン23または24が「1」を出力す
る時「1」を出力し、それ以外の時「0」を出力する。
、22、23、24は、A,B,CXDを4ビットパタ
ーンで表した場合、それぞれ「OIXXJ、rloxx
」、rxxo1」、rXX10」の時「1」を出力し、
それ以外の場合「0」を出力する。一方、第2のニュー
ラルレイヤ30において、ニューロン31は、第1のニ
ューラルレイヤ20のニューロン21または22が「l
」を出力する時「1」を出力し、それ以外の時「0」を
出力する。またニューロン32は、第1のニューラルレ
イヤ20のニューロン23または24が「1」を出力す
る時「1」を出力し、それ以外の時「0」を出力する。
第3のニューラルレイヤ40において、ニューロン4l
は、第2のニューラルレイヤ30のニューロン32のみ
が「1」を出力する時「1」を出力し、それ以外の時[
OJを出力する。またニューロン42は、第2のニュー
ラルレイヤ30のニューロン31のみカ「1」を出力す
る時「I」を出力し、それ以外の時「0」を出力する。
は、第2のニューラルレイヤ30のニューロン32のみ
が「1」を出力する時「1」を出力し、それ以外の時[
OJを出力する。またニューロン42は、第2のニュー
ラルレイヤ30のニューロン31のみカ「1」を出力す
る時「I」を出力し、それ以外の時「0」を出力する。
一方、出力レイヤ90のニューロン9lは、第3のニュ
ーラルレイヤ40のニューロンの少なくともひとつが「
1」を出力する時「1」を出力する。
ーラルレイヤ40のニューロンの少なくともひとつが「
1」を出力する時「1」を出力する。
したがって、A,B,C,Dの入力データがビットパタ
ーンでroooIJの場合、第1のニューラルレイヤ2
0においてニューロン23のみが「l」を出力し、他の
ニューロン21、22、24が「0」を出力する。この
結果、第2のニューラルレイヤ30においてニューロン
32のみが「1」を出力し、第3のニューラルレイヤ4
0においてニューロン42が「1」を出力することとな
る。したがって出力レイヤ90のニューロン91が「1
」を出力する。同様にしてA,B,C,Dが、’001
0J、「0100」、rlo00,、rl 1 1 0
J、r1101,、rlo11J、[0111Jの場合
、第2のニューラルレイヤ30において、いずれかのニ
ューロンが「1」を出力し、これにより第3のニューラ
ルレイヤ40のいずれか一方のニューロンが「IJを出
力することとなり、第4のニューラルレイヤ40のいず
れか一方のニューロンがrlJを出力する。したがって
、出力レイヤ90のニューロン91が「1」を出力する
。
ーンでroooIJの場合、第1のニューラルレイヤ2
0においてニューロン23のみが「l」を出力し、他の
ニューロン21、22、24が「0」を出力する。この
結果、第2のニューラルレイヤ30においてニューロン
32のみが「1」を出力し、第3のニューラルレイヤ4
0においてニューロン42が「1」を出力することとな
る。したがって出力レイヤ90のニューロン91が「1
」を出力する。同様にしてA,B,C,Dが、’001
0J、「0100」、rlo00,、rl 1 1 0
J、r1101,、rlo11J、[0111Jの場合
、第2のニューラルレイヤ30において、いずれかのニ
ューロンが「1」を出力し、これにより第3のニューラ
ルレイヤ40のいずれか一方のニューロンが「IJを出
力することとなり、第4のニューラルレイヤ40のいず
れか一方のニューロンがrlJを出力する。したがって
、出力レイヤ90のニューロン91が「1」を出力する
。
第20図(a)から容易に理解されるように、比較例に
おいて、シナプス数は36であり、ニューロン数はlO
である。これに対し本実施例においては、第20図(b
)から理解されるようにシナプス数は30であり、ニュ
ーロン数は10である。しかして、論理演算(AfE9
B)lE9 (CeD)によって入力データを処理する
場合、比較例において36個のシナプスが必要であった
のに対し、本実施例によれば30個のシナブスですむこ
とが理解される。
おいて、シナプス数は36であり、ニューロン数はlO
である。これに対し本実施例においては、第20図(b
)から理解されるようにシナプス数は30であり、ニュ
ーロン数は10である。しかして、論理演算(AfE9
B)lE9 (CeD)によって入力データを処理する
場合、比較例において36個のシナプスが必要であった
のに対し、本実施例によれば30個のシナブスですむこ
とが理解される。
すなわち、本実施例によればシナブス数は約2割減少し
、上記各実施例において述べたのと同様な効果が得られ
る。つまり、ニューラルレイヤの数を増加させるととも
に、出力レイヤ90側に構築されるニューラルレイヤの
ニューロン数をそれよリ前段のニューラルレイヤのニュ
ーロン数以下に定めることにより、シナプス数を減少さ
せることができ、画像処理装置のメモリ容量を削減する
とともに演算速度を向上させることができる。
、上記各実施例において述べたのと同様な効果が得られ
る。つまり、ニューラルレイヤの数を増加させるととも
に、出力レイヤ90側に構築されるニューラルレイヤの
ニューロン数をそれよリ前段のニューラルレイヤのニュ
ーロン数以下に定めることにより、シナプス数を減少さ
せることができ、画像処理装置のメモリ容量を削減する
とともに演算速度を向上させることができる。
第21図(a)、(b)はニューラルネットワークの第
6実施例を比較例とともに表したものであり、この例は
入力データを論理演算 + (AeB) e(CeD)) eE (8)に従
って処理する場合を示す。
6実施例を比較例とともに表したものであり、この例は
入力データを論理演算 + (AeB) e(CeD)) eE (8)に従
って処理する場合を示す。
第21図(a)は比較例を示し、人力データ群10は5
個のデータA−E、初段のレイヤ20は15個のニュー
ロン、出力レイヤ90は1個のニューロンをそれぞれ有
する。比較例において、上記(8)式を展開して得られ
る各項をニューラルレイヤ20の各ニューロンへ入力し
ている。したがって、全てのデータはO次データとして
処理されている。
個のデータA−E、初段のレイヤ20は15個のニュー
ロン、出力レイヤ90は1個のニューロンをそれぞれ有
する。比較例において、上記(8)式を展開して得られ
る各項をニューラルレイヤ20の各ニューロンへ入力し
ている。したがって、全てのデータはO次データとして
処理されている。
これに対し、第21図(b)はニューラルネットワーク
の第6実施例を示し、この構成は入力データ群lOと、
第1、第2、第3および第4のニューラルレイヤ20、
30、40、50と、出力レイヤ90とを有する。第1
のニューラルレイヤ20と第2のニューラルレイヤ30
は(AeB)と(CeD)に従った処理をそれぞれ行い
、第3のニューラルレイヤ40は( (AeB) e(
CeD))に従った処理を行う。そして第4のニューラ
ルレイヤ50および出力レイヤ90により、{(AIE
9B)$ (CeD)) @Eによる最終結果が求めら
れる。
の第6実施例を示し、この構成は入力データ群lOと、
第1、第2、第3および第4のニューラルレイヤ20、
30、40、50と、出力レイヤ90とを有する。第1
のニューラルレイヤ20と第2のニューラルレイヤ30
は(AeB)と(CeD)に従った処理をそれぞれ行い
、第3のニューラルレイヤ40は( (AeB) e(
CeD))に従った処理を行う。そして第4のニューラ
ルレイヤ50および出力レイヤ90により、{(AIE
9B)$ (CeD)) @Eによる最終結果が求めら
れる。
第21図(a)および第21図(b)の対比から理解さ
れるように、比較例において、シナプス数は80、ニュ
ーロン数は16であり、これに対し本実施例においては
、シナプス数は32であり、ニューロン数は10である
。しかして、本実施例によればシナプス数は約4割に減
少し、またニューロン数は約6割に減少する。したがっ
て本実施例においても、上記各実施例において述べたの
と同様な効果が得られる。
れるように、比較例において、シナプス数は80、ニュ
ーロン数は16であり、これに対し本実施例においては
、シナプス数は32であり、ニューロン数は10である
。しかして、本実施例によればシナプス数は約4割に減
少し、またニューロン数は約6割に減少する。したがっ
て本実施例においても、上記各実施例において述べたの
と同様な効果が得られる。
以上の説明から理解されるように、本発明において、入
力データ群、ニューラルレイヤ、および出力レイヤから
なる層構造は、そのデータ処理において必要とする次数
、および入力データの次数に応じて最適に構成される必
要があり、また入力データはその層構造に適合したレイ
ヤに入力される。なお、ここで次数とは、前述したよう
に、データあるいは処理内容の抽象度を意味する。
力データ群、ニューラルレイヤ、および出力レイヤから
なる層構造は、そのデータ処理において必要とする次数
、および入力データの次数に応じて最適に構成される必
要があり、また入力データはその層構造に適合したレイ
ヤに入力される。なお、ここで次数とは、前述したよう
に、データあるいは処理内容の抽象度を意味する。
さて、ニューロンが上述のような処理を行うには、重み
が学習により適当な値に定められなければならない。こ
のため本実施例においては、後述するように、重みが時
間的に指数関数的に変化せしめられる。なお、重みの修
正方法として、特願昭63−297541号に開示され
ているように大別して3つの方法があり、これらをここ
ではそれぞれモード■、モード■、モード■と呼ぶこと
とする。
が学習により適当な値に定められなければならない。こ
のため本実施例においては、後述するように、重みが時
間的に指数関数的に変化せしめられる。なお、重みの修
正方法として、特願昭63−297541号に開示され
ているように大別して3つの方法があり、これらをここ
ではそれぞれモード■、モード■、モード■と呼ぶこと
とする。
モード■は第22図に示すように、ニューロンの重みが
そのニューロンの出力に基づいて修正されるものである
。この修正方法は、各レイヤの出力の目標値が明らかに
なっている場合に有効である。さて、ある入力に対して
そのニューロンが出力を生じた場合その出力が目標値に
一致し、あるいは目標値に十分近かった時、その時の入
出力の関係は強化されるべきである。これは、有意な人
力が与えられたシナブスの重みを高めることに相当する
。モード■においては、各ニューロンの出力の目標値が
予め分かっているので、各ニューロンの出力を目標値と
比較し、両者が一致あるいは十分近かった時、例えば2
値入力の場合「1」が入力されたシナブスの重みが増加
せしめられる。
そのニューロンの出力に基づいて修正されるものである
。この修正方法は、各レイヤの出力の目標値が明らかに
なっている場合に有効である。さて、ある入力に対して
そのニューロンが出力を生じた場合その出力が目標値に
一致し、あるいは目標値に十分近かった時、その時の入
出力の関係は強化されるべきである。これは、有意な人
力が与えられたシナブスの重みを高めることに相当する
。モード■においては、各ニューロンの出力の目標値が
予め分かっているので、各ニューロンの出力を目標値と
比較し、両者が一致あるいは十分近かった時、例えば2
値入力の場合「1」が入力されたシナブスの重みが増加
せしめられる。
モード■は第23図に示すように、ニューロンの重みが
最終的な出力の評価結果に基づいて修正されるものであ
る。この修正方法は、画像処理装置の処理内容を大局的
に判断する場合に有効である。このモードにおける評価
方法としては、出力レイヤの最終出力と目標値とのハミ
ング距離、あるいはビタゴラス距離の評価、あるいは惑
応的評価等が可能である。この評価の結果、出力が目標
値と一致あるいは十分近ければ、その時の入出力関係は
強化されるべきであり、その時、例えば「1」が入力さ
れた各シナブスの重みが増加せしめられる。
最終的な出力の評価結果に基づいて修正されるものであ
る。この修正方法は、画像処理装置の処理内容を大局的
に判断する場合に有効である。このモードにおける評価
方法としては、出力レイヤの最終出力と目標値とのハミ
ング距離、あるいはビタゴラス距離の評価、あるいは惑
応的評価等が可能である。この評価の結果、出力が目標
値と一致あるいは十分近ければ、その時の入出力関係は
強化されるべきであり、その時、例えば「1」が入力さ
れた各シナブスの重みが増加せしめられる。
モード■は、入力をそのまま記憶するタイプの学習の場
合の重みの修正方法であり、人力とその人力に対して最
初に生じた出力との関係を強化する。すなわち、第22
図の構成において、その人力に対して「1」を出力した
ニューロンにおける、r1,が入力されたシナブスの重
みが増加せしめられる。
合の重みの修正方法であり、人力とその人力に対して最
初に生じた出力との関係を強化する。すなわち、第22
図の構成において、その人力に対して「1」を出力した
ニューロンにおける、r1,が入力されたシナブスの重
みが増加せしめられる。
このような重みの修正において、発明者等は、まずニュ
ーロンの重みの変化を生体の神経細胞における膜電位の
変化と仮定した。つまり、重みが生体の神経細胞におけ
る膜電位と同様に設定されるならば、画像処理装置にお
ける学習の効率は生体の脳細胞と同様に極めて高くなる
と、考えられる。そしてまた、重みが膜電位と同様な変
化を示すのであれば、その変化は、一般的なRLC回路
と同様に指数関数で表現されると考えられる。しかして
重みWは、第24図に示すように、W一±exp(t)
( 9 )で表される。ただ
し、Lは個々のニューロンにおける学習時間、すなわち
学習回数を表す。
ーロンの重みの変化を生体の神経細胞における膜電位の
変化と仮定した。つまり、重みが生体の神経細胞におけ
る膜電位と同様に設定されるならば、画像処理装置にお
ける学習の効率は生体の脳細胞と同様に極めて高くなる
と、考えられる。そしてまた、重みが膜電位と同様な変
化を示すのであれば、その変化は、一般的なRLC回路
と同様に指数関数で表現されると考えられる。しかして
重みWは、第24図に示すように、W一±exp(t)
( 9 )で表される。ただ
し、Lは個々のニューロンにおける学習時間、すなわち
学習回数を表す。
(9)式において、シナブスが興奮型の場合には符号は
十になり、重みWは、実線Iで示すように0から始まっ
て最初は急速に大きくなり、学習開始から時間がたつほ
どその変化量は小さくなり最大値W。に近づく。これに
対し、シナプスが抑制型の場合には符号はーになり、重
みWは、実線Jで示すようにOから始まって最初は急速
に小さくなり、学習開始から時間がたつほどその変化量
は小さくなり最小値W,に近づく。
十になり、重みWは、実線Iで示すように0から始まっ
て最初は急速に大きくなり、学習開始から時間がたつほ
どその変化量は小さくなり最大値W。に近づく。これに
対し、シナプスが抑制型の場合には符号はーになり、重
みWは、実線Jで示すようにOから始まって最初は急速
に小さくなり、学習開始から時間がたつほどその変化量
は小さくなり最小値W,に近づく。
学習の開始直後、そのシナブスについてあまりデータ相
関がないので、この時の重みWは小さく定められるが、
その後、データ相関が大きくなっていくので、重みWは
急速に大きくなり、これにより学習による収束が早めら
れる。これに対し、学習が進んで重みWが既に大きくな
っている場合、そのシナプスはそれまでの学習において
十分データ相関がある。したがって、その重みWをいた
ずらに変動させると、単に振動を起こすだけであり学習
における収束性を阻害することとなるが、重みWはほと
んど変化しないように定められているので、十分な収束
性が得られる。
関がないので、この時の重みWは小さく定められるが、
その後、データ相関が大きくなっていくので、重みWは
急速に大きくなり、これにより学習による収束が早めら
れる。これに対し、学習が進んで重みWが既に大きくな
っている場合、そのシナプスはそれまでの学習において
十分データ相関がある。したがって、その重みWをいた
ずらに変動させると、単に振動を起こすだけであり学習
における収束性を阻害することとなるが、重みWはほと
んど変化しないように定められているので、十分な収束
性が得られる。
なお、従来、ニューロンの出力特性として抑制型および
興奮型ニューロンが考えられており、これを画像処理装
置として最適配置するには処理内容を考慮した詳細な検
討が必要であり、画像処理装置において抑制型ニューロ
ンと興奮型ニューロンの結合は複雑である。しかし本実
施例によれば、ひとつのシナブスの特性として重みWの
符号を+または一に選択するだけで、抑制型、興奮型を
任意に実現でき、したがって回路構成が単純化され、回
路の自由度が高まる。なお、抑制型ニューロンの存在に
よって、データの分離性が向上することは、ローゼンブ
ラット以来よく知られたところである( 1958年P
.Rosenblatt “The percept
ron: a probabilistic mo
del for informationstor
age and organization in t
he brainPsychological Rev
iew 65: 386−408)。
興奮型ニューロンが考えられており、これを画像処理装
置として最適配置するには処理内容を考慮した詳細な検
討が必要であり、画像処理装置において抑制型ニューロ
ンと興奮型ニューロンの結合は複雑である。しかし本実
施例によれば、ひとつのシナブスの特性として重みWの
符号を+または一に選択するだけで、抑制型、興奮型を
任意に実現でき、したがって回路構成が単純化され、回
路の自由度が高まる。なお、抑制型ニューロンの存在に
よって、データの分離性が向上することは、ローゼンブ
ラット以来よく知られたところである( 1958年P
.Rosenblatt “The percept
ron: a probabilistic mo
del for informationstor
age and organization in t
he brainPsychological Rev
iew 65: 386−408)。
しかして本実施例によれば、画像処理装置における学習
の効率が向上し、最終出力データを早1■に収束かつ安
定化させることができる。また、上述のように、重みW
の正負の符号を変えるだけで抑制型および興奮型の特性
が得られるので、画像処理装置の回路の自由度が高まる
。
の効率が向上し、最終出力データを早1■に収束かつ安
定化させることができる。また、上述のように、重みW
の正負の符号を変えるだけで抑制型および興奮型の特性
が得られるので、画像処理装置の回路の自由度が高まる
。
なお、重みWの時間的変化は、必ずしも正確に指数関数
に定める必要はなく、例えば折れ線等で近似してもよい
。
に定める必要はなく、例えば折れ線等で近似してもよい
。
次に、ニューラルネットワークの第7〜9実施例を説明
するとともに、本発明の第2の基本理念を解説する。
するとともに、本発明の第2の基本理念を解説する。
第25図(a)は本発明のニエーラルネットワークの第
7実施例を示し、この実施例は、学習の結果(A+B)
の論理演算を実行するに到ったニューラルネットワーク
を示すものである。
7実施例を示し、この実施例は、学習の結果(A+B)
の論理演算を実行するに到ったニューラルネットワーク
を示すものである。
この構成は、1層のニューラルレイヤ20を存し、この
ニューラルレイヤ20には、データ数と同数、すなわち
2個のニューロン21、22が設けられる。各ニューロ
ン21、22にはデータAおよびBがそれぞれ入力され
る。各ニューロン2l、22は、各データの入力経路と
の接続部分すなわちシナブスにおける重みWlと、閾値
θとを有する。学習により重みW,は変化し、ニューロ
ンは、所定の処理を行うようになる。本実施例では、学
習の結果、一方のニューロン21のみが論理演算(A+
B)の処理を行い、他方のニューロン22は実質的に作
用しない。すなわちニューロン2lは例えばw+ =l
,w2=1、θ=1に設定され、 AW+ 十BW2≧1 の時、出力データ「1」を出力する。一方ニューロン2
2は、例えば、W3=0、W4=0、θ=1に設定され
、したがって常に、 AW.J+BW4 < 1 であり、閾値θを越えることはなく、出力データ「0」
を出力する。
ニューラルレイヤ20には、データ数と同数、すなわち
2個のニューロン21、22が設けられる。各ニューロ
ン21、22にはデータAおよびBがそれぞれ入力され
る。各ニューロン2l、22は、各データの入力経路と
の接続部分すなわちシナブスにおける重みWlと、閾値
θとを有する。学習により重みW,は変化し、ニューロ
ンは、所定の処理を行うようになる。本実施例では、学
習の結果、一方のニューロン21のみが論理演算(A+
B)の処理を行い、他方のニューロン22は実質的に作
用しない。すなわちニューロン2lは例えばw+ =l
,w2=1、θ=1に設定され、 AW+ 十BW2≧1 の時、出力データ「1」を出力する。一方ニューロン2
2は、例えば、W3=0、W4=0、θ=1に設定され
、したがって常に、 AW.J+BW4 < 1 であり、閾値θを越えることはなく、出力データ「0」
を出力する。
しかしてニューロン21は、データA,Bの少なくとも
一方が「l」の時、出力データ「1」を出力し、本実施
例のニューラルネットワークは、論理演算(A+B)を
実行する。
一方が「l」の時、出力データ「1」を出力し、本実施
例のニューラルネットワークは、論理演算(A+B)を
実行する。
第25図(b)は第8実施例を示し、この実施例は、学
習の結果(AeB)の論理演算を実行するに到ったニュ
ーラルネットワークを示すものである。この構成は2層
のニューラルレイヤ20、30を有し、初段のニューラ
ルレイヤ20にはニューロン21、22が設けられ、ま
た後段のニューロン30にはニューロン31、32が設
けられる。初段のニューラルレイヤ20のニューロン2
1、22には、データAおよびBが入力される。
習の結果(AeB)の論理演算を実行するに到ったニュ
ーラルネットワークを示すものである。この構成は2層
のニューラルレイヤ20、30を有し、初段のニューラ
ルレイヤ20にはニューロン21、22が設けられ、ま
た後段のニューロン30にはニューロン31、32が設
けられる。初段のニューラルレイヤ20のニューロン2
1、22には、データAおよびBが入力される。
論理演算(AeB)は、(XB+AB) とH開され、
ニューラルレイヤ20において、ニューロン2lが(A
B)の処理を行い、ニューロン22が(AE)の処理を
行う。すなわちニューロン21は、例えばw,=l、W
2=1、θ−1に設定され、 AW,+BW,≧1 の時、出力データ「1」を出力する。一方、ニューロン
22は、例えばW3−1、W4=1、θ一1に設定され
、 AW3+BW4≧1 の時、出力データrlJを出力する。
ニューラルレイヤ20において、ニューロン2lが(A
B)の処理を行い、ニューロン22が(AE)の処理を
行う。すなわちニューロン21は、例えばw,=l、W
2=1、θ−1に設定され、 AW,+BW,≧1 の時、出力データ「1」を出力する。一方、ニューロン
22は、例えばW3−1、W4=1、θ一1に設定され
、 AW3+BW4≧1 の時、出力データrlJを出力する。
ニューラルレイヤ30のニューロン31は、(AB+A
B)の処理を行い、例えばW,=1、W6=L θ−1
に設定され、ニューロン2lの出力をYl、ニューロン
22の出力をY2とすると”y’+ Ws +YZ W
6≧1 の時、出力rlJを出力する。一方ニューロン32は実
質的に作用しない。
B)の処理を行い、例えばW,=1、W6=L θ−1
に設定され、ニューロン2lの出力をYl、ニューロン
22の出力をY2とすると”y’+ Ws +YZ W
6≧1 の時、出力rlJを出力する。一方ニューロン32は実
質的に作用しない。
しかしてニューロン3lは、データAXBの一方のみが
「1」の時出力データ「1」を出力し、両者が共に「1
」または「0」の時出力データ「OJを出力し、本実施
例のニューラルネットワークは、論理演算(AeB)を
実行する。
「1」の時出力データ「1」を出力し、両者が共に「1
」または「0」の時出力データ「OJを出力し、本実施
例のニューラルネットワークは、論理演算(AeB)を
実行する。
第25図(C)は第9実施例を示し、この実施例は、学
習の結果(A+B)Cの論理演算を実行するに到ったニ
ューラルネットワークを示すものである。この構成は2
層のニューラルレイヤ20、30を有し、初段のニュー
ラルレイヤ20にはニューロン21、22、23が設け
られ、また後段のニューロン30にはニューロン31、
32、33が設けられる。初段のニューラルレイヤ20
のニューロン21、22、23には、データA, Bお
よびCが入力される。
習の結果(A+B)Cの論理演算を実行するに到ったニ
ューラルネットワークを示すものである。この構成は2
層のニューラルレイヤ20、30を有し、初段のニュー
ラルレイヤ20にはニューロン21、22、23が設け
られ、また後段のニューロン30にはニューロン31、
32、33が設けられる。初段のニューラルレイヤ20
のニューロン21、22、23には、データA, Bお
よびCが入力される。
ニューラルレイヤ20において、ニューロン21は(A
+B)の処理を行い、ニューロン22は実質的に作用せ
ず、ニューロン23は入力データCをそのまま出力する
。すなわちニューロン21は、例えばW1 =1、W2
−1、W.=O, θ=1に設定され、 A W + + B W Z +C W 3≧1の時、
出力データ「1」を出力する。一方、ニューロン22は
、例えば各重みW, 、W, 、W6が0に設定される
とともに、閾値θが1に設定され、実質的に作用しない
。またニューロン23は、例?ば重みW7−0、W e
= O、W,=1、θ=1に設定され、 AWff +Bw.+CW9≧1 の時、出力データ「1」を出力し、その他の時、出力デ
ータ「0」を出力する。
+B)の処理を行い、ニューロン22は実質的に作用せ
ず、ニューロン23は入力データCをそのまま出力する
。すなわちニューロン21は、例えばW1 =1、W2
−1、W.=O, θ=1に設定され、 A W + + B W Z +C W 3≧1の時、
出力データ「1」を出力する。一方、ニューロン22は
、例えば各重みW, 、W, 、W6が0に設定される
とともに、閾値θが1に設定され、実質的に作用しない
。またニューロン23は、例?ば重みW7−0、W e
= O、W,=1、θ=1に設定され、 AWff +Bw.+CW9≧1 の時、出力データ「1」を出力し、その他の時、出力デ
ータ「0」を出力する。
ニューラルレイヤ30のニューロン3lは、ニューラル
レイヤ20のニューロン2L23の出力データに基づい
て(A十B)Cの処理を行い、例えばW ++ = 1
、W1■=0、W++=1、θ−2に設定され、ニュー
ロン2lの出力をY1、ニューロン22の出力をY2、
ニューロン23の出力をY3とすると、 Y,wl,+yZ wl■+YzWr:+≧2の時、出
力データrlJを出力する。一方ニューロン32、33
は実質的に作用しない。
レイヤ20のニューロン2L23の出力データに基づい
て(A十B)Cの処理を行い、例えばW ++ = 1
、W1■=0、W++=1、θ−2に設定され、ニュー
ロン2lの出力をY1、ニューロン22の出力をY2、
ニューロン23の出力をY3とすると、 Y,wl,+yZ wl■+YzWr:+≧2の時、出
力データrlJを出力する。一方ニューロン32、33
は実質的に作用しない。
しかしてニューpン31は、データA,Bの少なくとも
一方が「l」でありかつデータCが「IJのとき出力デ
ータ「l」を出力し、本実施例のニューラルネットワー
クは、論理演算(A+B)Cを実行する。
一方が「l」でありかつデータCが「IJのとき出力デ
ータ「l」を出力し、本実施例のニューラルネットワー
クは、論理演算(A+B)Cを実行する。
二こで本発明の第2の基本理念を解説する。
第7実施例において、データA,Bは1つの作用素r−
1− (OR)Jにより結合されており、この論理演算
(A+B)は、1層のニヱーラルレイヤ20によって実
行される。
1− (OR)Jにより結合されており、この論理演算
(A+B)は、1層のニヱーラルレイヤ20によって実
行される。
第8実施例においては、データA,Bは「e(EX−O
R)Jにより結合されており、この論理演算(AeB)
はCAB+AE) と展開される。
R)Jにより結合されており、この論理演算(AeB)
はCAB+AE) と展開される。
そして初段のニューラルレイヤ20においてABとAB
が実行され、すなわち作用素rx (AND)Jについ
ての論理演算が実行される。次いで、2段目のニューラ
ノレレイヤ30において(八B+AE)すなわち作用素
r+ (OR)Jについての論理演算が実行される。し
かして、第8実施例の論理演算は2層のニューラルレイ
ヤによって実行される。
が実行され、すなわち作用素rx (AND)Jについ
ての論理演算が実行される。次いで、2段目のニューラ
ノレレイヤ30において(八B+AE)すなわち作用素
r+ (OR)Jについての論理演算が実行される。し
かして、第8実施例の論理演算は2層のニューラルレイ
ヤによって実行される。
第9実施例において、データA,Bは1つの作用素r+
(OR)Jにより結合されており、この論理演算は初
段のニューラルレイヤ20によって実行される。その論
理演算結果に対してデータCが作用素rx (AND)
Jにより結合されており、この論理演算(A+B)Cは
2段目のニューラルレイヤ30によって実行される。し
かして第9実施例の論理演算は2層のニューラルレイヤ
によって実行される。
(OR)Jにより結合されており、この論理演算は初
段のニューラルレイヤ20によって実行される。その論
理演算結果に対してデータCが作用素rx (AND)
Jにより結合されており、この論理演算(A+B)Cは
2段目のニューラルレイヤ30によって実行される。し
かして第9実施例の論理演算は2層のニューラルレイヤ
によって実行される。
このように、ニューラルネットワークの処理内容を論理
演算子rANDJ、rORJで表現した場合、論理演算
子の数、あるいは論理演算の構成に応じてニューラルレ
イヤの層数が増加している。
演算子rANDJ、rORJで表現した場合、論理演算
子の数、あるいは論理演算の構成に応じてニューラルレ
イヤの層数が増加している。
なお各データの次数は前述した通りであり、その定義に
よると、例えば、論理演算(AeB)を行う第8実施例
において、データA,BをO次とすると、初段のニュー
ラルレイヤ20の各ニューロン21、22においてそれ
ぞれ八BとAErの処理が実行され、1次の出力データ
が2段目のニューラルレイヤ30のニューロンに入力さ
れる。そして2段目のニューラノレレイヤ30において
、(AB+AJ)の処理が実行され、2次の出力データ
が出力される。すなわち、最終出力データは2次であり
、論理演算(AeB)は、最終出力デ−夕の次数から入
力データの次数を引いた数すなわち2層のニューラルレ
イヤによって処理されると考えられる。
よると、例えば、論理演算(AeB)を行う第8実施例
において、データA,BをO次とすると、初段のニュー
ラルレイヤ20の各ニューロン21、22においてそれ
ぞれ八BとAErの処理が実行され、1次の出力データ
が2段目のニューラルレイヤ30のニューロンに入力さ
れる。そして2段目のニューラノレレイヤ30において
、(AB+AJ)の処理が実行され、2次の出力データ
が出力される。すなわち、最終出力データは2次であり
、論理演算(AeB)は、最終出力デ−夕の次数から入
力データの次数を引いた数すなわち2層のニューラルレ
イヤによって処理されると考えられる。
発明者らは、入力データに対して最終出力データの次数
が何次高いかを判断することにより、ニューラルレイヤ
のN数を決定することができる、つまり、ニューラルレ
イヤの層数は、最終出力データの次数から入力データの
次数をひいた数であると推測した。これが本発明の第2
の基本的な思想である。次数は、前述のようにデータの
抽象度であり、そのデータの有する性質によって定まり
、例えば図形認識において、画素データは0次であり、
ベクトルポイント、端点データ、六数のデータあるいは
オイラー数のデータはさらに高次である。例えばベクト
ルデータを用いて図形認識を行う場合、ベクトルポイン
トは他の画素データに比して高次であり、ベクトルポイ
ントの次数から他の画素データの次数をひいた数のニュ
ーラルレイヤを設ければよい。また、画素データから端
点データを求める場合、端点データの次数すなわち抽象
度を考慮し、端点データの次数から画素データの次数を
ひいた数のニューラルレイヤを設ければよい。この場合
の実施例については第27図および第28図を参照して
後述する。
が何次高いかを判断することにより、ニューラルレイヤ
のN数を決定することができる、つまり、ニューラルレ
イヤの層数は、最終出力データの次数から入力データの
次数をひいた数であると推測した。これが本発明の第2
の基本的な思想である。次数は、前述のようにデータの
抽象度であり、そのデータの有する性質によって定まり
、例えば図形認識において、画素データは0次であり、
ベクトルポイント、端点データ、六数のデータあるいは
オイラー数のデータはさらに高次である。例えばベクト
ルデータを用いて図形認識を行う場合、ベクトルポイン
トは他の画素データに比して高次であり、ベクトルポイ
ントの次数から他の画素データの次数をひいた数のニュ
ーラルレイヤを設ければよい。また、画素データから端
点データを求める場合、端点データの次数すなわち抽象
度を考慮し、端点データの次数から画素データの次数を
ひいた数のニューラルレイヤを設ければよい。この場合
の実施例については第27図および第28図を参照して
後述する。
第26図はニューラルネットワークの第10実施例を示
したものであり、この例は学習の結果、入力データA,
B,C,Dを論理演算 (AeB)$ ((jBD) に従って処理するように到った場合を示す。なおA,B
,CおよびDは「1」または「0」のデジタル値であり
、この論理演算の結果もrl」または「0」のデジタル
値として出力されるとして説明する。
したものであり、この例は学習の結果、入力データA,
B,C,Dを論理演算 (AeB)$ ((jBD) に従って処理するように到った場合を示す。なおA,B
,CおよびDは「1」または「0」のデジタル値であり
、この論理演算の結果もrl」または「0」のデジタル
値として出力されるとして説明する。
この実施例は、4つのニューラルレイヤ20、30、4
0、90とを有し、最終段のニューラルレイヤ90は最
終出力データを出力する出力レイヤである。第1のニュ
ーラルレイヤ20は4個のニューロン21、22、23
、24を有し、同様に、第2のニューラルレイヤ30は
4個のニューロン31、32、33、34を、第3のニ
ューラ?レイヤ40は4個のニューロン41、42、4
3、44を、出力レイヤ90は4個のニューロン91、
92、93、94を有する。各データA〜Dは、それぞ
れ第1のニューラルレイヤ20の各ニューロンに入力さ
れる。なお、各ニューロンは隣のニューラルレイヤの各
ニューロンに接続されるが、簡単のため、実質的に作用
に関係しない部分の線は、図中省略されている。
0、90とを有し、最終段のニューラルレイヤ90は最
終出力データを出力する出力レイヤである。第1のニュ
ーラルレイヤ20は4個のニューロン21、22、23
、24を有し、同様に、第2のニューラルレイヤ30は
4個のニューロン31、32、33、34を、第3のニ
ューラ?レイヤ40は4個のニューロン41、42、4
3、44を、出力レイヤ90は4個のニューロン91、
92、93、94を有する。各データA〜Dは、それぞ
れ第1のニューラルレイヤ20の各ニューロンに入力さ
れる。なお、各ニューロンは隣のニューラルレイヤの各
ニューロンに接続されるが、簡単のため、実質的に作用
に関係しない部分の線は、図中省略されている。
各ニューロンは、入力されるデータに対して乗じられる
重みWIと閾値θとを有し、上記(1)弐に従い、各人
力データと重みの積の総和が闇値以上の時出力データ「
IJを出力し、この総和が閾値θよりも小さい時出力デ
ータr■,を出力する。
重みWIと閾値θとを有し、上記(1)弐に従い、各人
力データと重みの積の総和が闇値以上の時出力データ「
IJを出力し、この総和が閾値θよりも小さい時出力デ
ータr■,を出力する。
論理演算(AeB)は、(AB+,II)と展開され、
ニューラルレイヤ20において、ニューロン21が(X
B)の処理を行い、ニューロン22が(AB)の処理を
行う。また論理演算(CIIIEID)は、(CD+C
r5)と展開され、=ユ o723が(CD)の処理を
行い、ニューロン24が(CD)の処理を行う。
ニューラルレイヤ20において、ニューロン21が(X
B)の処理を行い、ニューロン22が(AB)の処理を
行う。また論理演算(CIIIEID)は、(CD+C
r5)と展開され、=ユ o723が(CD)の処理を
行い、ニューロン24が(CD)の処理を行う。
?なわちニューロン21は、例えばW!l=−l、W2
■=1、Wzy=O、W..=O、θ=1に設定され、 A W z + + B W z■+C Wz3+ D
Wz4≧1のとき出力データ「1」を出力する。ニュ
ーロン22は例えばW2S=1、WZ&= 1,Wt
’r=O、W 2 a = O、θ=1に設定され、A
Wzs+BWzb+CWz7+DWza≧1のとき出力
データ「l」を出力する。同様にしてニューロン23、
24の重みW,と閾値θが定められる。
■=1、Wzy=O、W..=O、θ=1に設定され、 A W z + + B W z■+C Wz3+ D
Wz4≧1のとき出力データ「1」を出力する。ニュ
ーロン22は例えばW2S=1、WZ&= 1,Wt
’r=O、W 2 a = O、θ=1に設定され、A
Wzs+BWzb+CWz7+DWza≧1のとき出力
データ「l」を出力する。同様にしてニューロン23、
24の重みW,と閾値θが定められる。
ニューラルレイヤ30のニューロン31は、(AB+A
B)の処理を行い、例えばWt+=1、W,2=1、W
ff:l=0、W34=O、θ=1に設定され、ニュー
ロン21、22、23、24の出力をそれぞれK,L,
M,Nとすると、 K W 3 1 + L W 3■+M W ff3
+N W 3a≧1の時、出力データr1」を出力する
。同様に、ニューロン33は、(CD+CI))の処理
を行い、ニューロン23、24の出力の少なくとも一方
が?1,の時、出力データ「1」を出力する。なおニュ
ーロン32、34の各重みW直はOに定められ、これら
のニューロンは実質的に作用しない。
B)の処理を行い、例えばWt+=1、W,2=1、W
ff:l=0、W34=O、θ=1に設定され、ニュー
ロン21、22、23、24の出力をそれぞれK,L,
M,Nとすると、 K W 3 1 + L W 3■+M W ff3
+N W 3a≧1の時、出力データr1」を出力する
。同様に、ニューロン33は、(CD+CI))の処理
を行い、ニューロン23、24の出力の少なくとも一方
が?1,の時、出力データ「1」を出力する。なおニュ
ーロン32、34の各重みW直はOに定められ、これら
のニューロンは実質的に作用しない。
したがってニューロン31は(A61}B)の結果を出
力し、ニューロン33は(([D)の結果を出力する。
力し、ニューロン33は(([D)の結果を出力する。
ニューロン3l、32、33、34の出力をそれぞれE
,FSGSHとすると、ニューラルレイヤ40のニュー
ロン41は(EC)の処理を行い、またニューロン43
は(EC)の処理を行う。すなわち、ニューロン4lに
おいて、例えばW , , x−1、W4■=OSW.
3=I、W,.− O、θ=1に設定され、 EW4,+FW4■+G W a z + H W a
a≧1のとき出力データ「l」を出力する。同様に、
ニューロン43は、例えばWas”1、W 4 6=
O、W4,= 1,Wss=0、θ=1に設定され、
E W4S+F Wab+ G W4?十H Wan≧
1のとき出力データr1,を出力する。ニューロン42
、44の各重みW.はOに定められ、これら?ニューロ
ンは実質的に作用しない。
,FSGSHとすると、ニューラルレイヤ40のニュー
ロン41は(EC)の処理を行い、またニューロン43
は(EC)の処理を行う。すなわち、ニューロン4lに
おいて、例えばW , , x−1、W4■=OSW.
3=I、W,.− O、θ=1に設定され、 EW4,+FW4■+G W a z + H W a
a≧1のとき出力データ「l」を出力する。同様に、
ニューロン43は、例えばWas”1、W 4 6=
O、W4,= 1,Wss=0、θ=1に設定され、
E W4S+F Wab+ G W4?十H Wan≧
1のとき出力データr1,を出力する。ニューロン42
、44の各重みW.はOに定められ、これら?ニューロ
ンは実質的に作用しない。
出力レイヤ90のニューロン9lは、(EG+EC)の
処理を行い、例えばW91=1、Wqz=O、W93=
1、W..=O、θ=1に設定され、ニューロン41、
42、43、44の出力をそれぞれP、Q,R,Sとす
ると、 P Wq+ + QW9■+RWqx+SWqa≧1の
時、出力データ「1」を出力する。ニューロン92、9
3、94は実質的に作用しない。このように使用目的が
限定され、出力データ数が明確であるならば実質的に作
用しないニューロンは省略可能である。
処理を行い、例えばW91=1、Wqz=O、W93=
1、W..=O、θ=1に設定され、ニューロン41、
42、43、44の出力をそれぞれP、Q,R,Sとす
ると、 P Wq+ + QW9■+RWqx+SWqa≧1の
時、出力データ「1」を出力する。ニューロン92、9
3、94は実質的に作用しない。このように使用目的が
限定され、出力データ数が明確であるならば実質的に作
用しないニューロンは省略可能である。
したがってニューロン91は、(EfEEIG)の結果
、すなわち(AeB)e(CeD)の結果を出力する。
、すなわち(AeB)e(CeD)の結果を出力する。
論理演算(AeB)および(CeD)における出力デー
タの次数は、上述したように作用素「e(EX−OR)
Jが2つの作用素rANDJと[ORJによって置き換
えられるので、それぞれ2である。したがって、論理演
算(AeB) e(CeD)における出力データの次数
は、4であり、この論理演算は、入力データと同数(4
個)のニューロンを有する4層のニューラルレイヤによ
り確実に処理される。
タの次数は、上述したように作用素「e(EX−OR)
Jが2つの作用素rANDJと[ORJによって置き換
えられるので、それぞれ2である。したがって、論理演
算(AeB) e(CeD)における出力データの次数
は、4であり、この論理演算は、入力データと同数(4
個)のニューロンを有する4層のニューラルレイヤによ
り確実に処理される。
第27図および第28図に、図形の端点を判断する画像
処理装置を示す。
処理装置を示す。
図形の端点のとらえ方は、ここでは、第18図(a)に
示すような3×3コンポリューションにおいて、第7図
(b)(i)〜(νfit)のいずれかのパターンが生
じたときに、中央画素(第18図(a)の画素E)は端
点てあるとする。この端点の判断は、中央画素以外の画
素A−D,F−1のいずれか1つが図形濃度(例えば「
1」)であり、かつ中央画素Eが図形濃度であるときに
「端点」、それ以外のときに「端点てない」とする。
示すような3×3コンポリューションにおいて、第7図
(b)(i)〜(νfit)のいずれかのパターンが生
じたときに、中央画素(第18図(a)の画素E)は端
点てあるとする。この端点の判断は、中央画素以外の画
素A−D,F−1のいずれか1つが図形濃度(例えば「
1」)であり、かつ中央画素Eが図形濃度であるときに
「端点」、それ以外のときに「端点てない」とする。
この判断のためのニューラルネットワークは、例えば第
27図のように構成され、この図は本発明の第11実施
例を示す。このニューラルネットワークは、9個のニュ
ーロン21〜29を有する第1のニューラルレイヤ20
と、9個のニューロン3l〜39を有する第2のニュー
ラルレイヤ30と、9個のニューロン91〜99を有す
る出力レイヤ90とを備える。画素A〜■のデータは第
1のニューラルレイヤ20に入力される。
27図のように構成され、この図は本発明の第11実施
例を示す。このニューラルネットワークは、9個のニュ
ーロン21〜29を有する第1のニューラルレイヤ20
と、9個のニューロン3l〜39を有する第2のニュー
ラルレイヤ30と、9個のニューロン91〜99を有す
る出力レイヤ90とを備える。画素A〜■のデータは第
1のニューラルレイヤ20に入力される。
第1のニューラルレイヤ20のニューロン2lは、画素
Eを除いた画素A〜■のうち、画素Aのみがr1,の時
、出力データr1,を出力する。
Eを除いた画素A〜■のうち、画素Aのみがr1,の時
、出力データr1,を出力する。
同様に、ニューロン22、23、24、25、26、2
7、28は、それぞれ両素B,C,D..F、G,H,
Iの1個のみが「1」の時、出力データ「1」を出力す
る。したがって画素A−D,F〜■のいずれか1つが「
1」のとき、ニューロン21〜28のいずれかが出力デ
ータr1,を出力する。一方、ニューロン29は、画素
Eのデータをそのまま出力する。
7、28は、それぞれ両素B,C,D..F、G,H,
Iの1個のみが「1」の時、出力データ「1」を出力す
る。したがって画素A−D,F〜■のいずれか1つが「
1」のとき、ニューロン21〜28のいずれかが出力デ
ータr1,を出力する。一方、ニューロン29は、画素
Eのデータをそのまま出力する。
第2のニューラルレイヤ30のニューロン31は、ニュ
ーロン21、29の出力がそれぞれ「1」の時、すなわ
ち画素AとEがそれぞれ「1」の時、出力データ「1」
を出力する。同様に、ニューロン32〜38は、画素B
と巳が「1」の時、画素CとEが「1」の時、画素Dと
Eが「1」の時、画素FとEが「1」の時、画素GとE
が「l」の時、画素HとEが「1」の時、画素■とEが
「1」の時、それぞれ、出力データ「1」を出力する。
ーロン21、29の出力がそれぞれ「1」の時、すなわ
ち画素AとEがそれぞれ「1」の時、出力データ「1」
を出力する。同様に、ニューロン32〜38は、画素B
と巳が「1」の時、画素CとEが「1」の時、画素Dと
Eが「1」の時、画素FとEが「1」の時、画素GとE
が「l」の時、画素HとEが「1」の時、画素■とEが
「1」の時、それぞれ、出力データ「1」を出力する。
なおニューロン39は、この端点の判断処理に実質的に
関与しない。
関与しない。
出力レイヤ90のニューロン91は、第2のニューラル
レイヤ30のニューロン31〜38の少なくとも1つが
出力データ「1」を出力する時、すなわち第18図(b
)の(i)〜(νiii)のいずれかのパターンが生じ
た時、出力データ「1」を出力する。この時、中央画素
Eは端点てあると判断される。なおニューロン92〜9
9は、この端点の判断処理に実質的に関与しない。
レイヤ30のニューロン31〜38の少なくとも1つが
出力データ「1」を出力する時、すなわち第18図(b
)の(i)〜(νiii)のいずれかのパターンが生じ
た時、出力データ「1」を出力する。この時、中央画素
Eは端点てあると判断される。なおニューロン92〜9
9は、この端点の判断処理に実質的に関与しない。
ここで各画素データA−1をO次データと考えると、ニ
ューロン91の出力は3次データであり、端点の判断処
理には3段階の論理演算が施されている。つまり、ニュ
ーラルレイヤ20では、A〜D,F〜■のうちの1つの
みが「1」であるか否かを判断するための論理積(例え
ばニューロン2■では、(AECI5FCRT)) が
とられる。ニューラルレイヤ30では、A−DS F〜
1のうちの1つのみがr1,であり、かつEが「l」で
あるか否かを判断するための論理積(例えばニューロン
31では、(AECr5FGHT .E)) がとられ
る。ニューラルレイヤ90ではEが「l」であり、かつ
A−D,F〜■のうちのいずれか1つ「l」であるとい
う論理和が判断される。
ューロン91の出力は3次データであり、端点の判断処
理には3段階の論理演算が施されている。つまり、ニュ
ーラルレイヤ20では、A〜D,F〜■のうちの1つの
みが「1」であるか否かを判断するための論理積(例え
ばニューロン2■では、(AECI5FCRT)) が
とられる。ニューラルレイヤ30では、A−DS F〜
1のうちの1つのみがr1,であり、かつEが「l」で
あるか否かを判断するための論理積(例えばニューロン
31では、(AECr5FGHT .E)) がとられ
る。ニューラルレイヤ90ではEが「l」であり、かつ
A−D,F〜■のうちのいずれか1つ「l」であるとい
う論理和が判断される。
なお、この端点の判断処理に関し、ニューラルレイヤ3
0において、Eが「1」であり、かつA〜D,F−rの
うちのいずれか1つが「1」であるという論理和をとる
ことができ、これにより、2層のニューラルレイヤによ
って端点の判断処理を行うこともできる。しかし、出力
データと入力データの次数の差が3の場合、高々3層の
ニューラルレイヤを設ければ、端点の判断処理を確実に
行うことができる。
0において、Eが「1」であり、かつA〜D,F−rの
うちのいずれか1つが「1」であるという論理和をとる
ことができ、これにより、2層のニューラルレイヤによ
って端点の判断処理を行うこともできる。しかし、出力
データと入力データの次数の差が3の場合、高々3層の
ニューラルレイヤを設ければ、端点の判断処理を確実に
行うことができる。
第28図は本発明の第12実施例を示す。この実施例に
おけるニューラルネットワークは、9個のニューロン2
1〜29を有する第1のニューラルレイヤ20と、9個
のニューロン31〜39を有する第2のニューラルレイ
ヤ30と、9個のニューロン91〜99を有する出力レ
イヤ90とを備える。画素A−1のデータは第1のニュ
ーラルレイヤ20に入力される。
おけるニューラルネットワークは、9個のニューロン2
1〜29を有する第1のニューラルレイヤ20と、9個
のニューロン31〜39を有する第2のニューラルレイ
ヤ30と、9個のニューロン91〜99を有する出力レ
イヤ90とを備える。画素A−1のデータは第1のニュ
ーラルレイヤ20に入力される。
第1のニューラルレイヤ20のニューロン2lは、画素
A−D,F〜■のうちの8個以上が「1」の時、出力デ
ータ「1」を出力する。ニューロン22は、画素A−D
,F〜1のうちの7個以上が「1」の時、出力データ「
1」を出力する。同様に、ニエーロン23、24、25
、26、27、28は、それぞれ、画素A−D,F−1
のうちの6個以上、5個以上、4個以上、3個以上、2
個以上、および1個以上が「1」の時、出力データ「1
」を出力する。ニューロン29は画素Eのデータをその
まま出力する。
A−D,F〜■のうちの8個以上が「1」の時、出力デ
ータ「1」を出力する。ニューロン22は、画素A−D
,F〜1のうちの7個以上が「1」の時、出力データ「
1」を出力する。同様に、ニエーロン23、24、25
、26、27、28は、それぞれ、画素A−D,F−1
のうちの6個以上、5個以上、4個以上、3個以上、2
個以上、および1個以上が「1」の時、出力データ「1
」を出力する。ニューロン29は画素Eのデータをその
まま出力する。
第2のニューラルレイヤ30のニューロン3lは、ニュ
ーラルレイヤ20のニューロン21〜2日のうちニュー
ロン28のみが「1」を出力する時、出力データr1,
を出力する。すなわち、ニューロン31は、画素A−D
,F−1のうちの1個のみが「1」の時、出力データr
1,を出力する。ニューロン32は、画素Eのデータを
そのまま出力する。なおニューロン33〜39は、この
端点の判断処理に実質的に関与しない。
ーラルレイヤ20のニューロン21〜2日のうちニュー
ロン28のみが「1」を出力する時、出力データr1,
を出力する。すなわち、ニューロン31は、画素A−D
,F−1のうちの1個のみが「1」の時、出力データr
1,を出力する。ニューロン32は、画素Eのデータを
そのまま出力する。なおニューロン33〜39は、この
端点の判断処理に実質的に関与しない。
出力レイヤ90のニューロン91は、ニューロン31、
32が共に「1」を出力するか否かを判断するために論
理積をとり、画素A−D,F−1のうちの1つのみが「
1」であり、かつEが「1」である時、出力データ「1
」を出力する。なおニューロン92〜99は、この端点
の判断処理に実質的に関与しない。
32が共に「1」を出力するか否かを判断するために論
理積をとり、画素A−D,F−1のうちの1つのみが「
1」であり、かつEが「1」である時、出力データ「1
」を出力する。なおニューロン92〜99は、この端点
の判断処理に実質的に関与しない。
シカして、この実施例において、3層のニューラルレイ
ヤによって、端点データが判断されている。
ヤによって、端点データが判断されている。
上記第7〜第12実施例において、データの次数はその
データに施された処理内容の数であり、各処理はそれぞ
れのニューラルレイヤによって行われていた。ここで処
理内容の例としては、論理演算子のrANDJ、「OR
」、”NANDJ、rNORJであり、rEX−ORJ
およびrEX−NOR.等の場合にはI’ANDJある
いは「OR,に変換されなければならない。これは、「
EX−OR,等はひとつのニューラルレイヤによっては
処理され得ないからである。
データに施された処理内容の数であり、各処理はそれぞ
れのニューラルレイヤによって行われていた。ここで処
理内容の例としては、論理演算子のrANDJ、「OR
」、”NANDJ、rNORJであり、rEX−ORJ
およびrEX−NOR.等の場合にはI’ANDJある
いは「OR,に変換されなければならない。これは、「
EX−OR,等はひとつのニューラルレイヤによっては
処理され得ないからである。
なお、処理内容は論理演算子によって表現されるものに
限定されず、出力データの性質によって定められる。
限定されず、出力データの性質によって定められる。
以上のように上記各実施例によれば、凹直角部を含む良
好なベクトルデータが生成され、このベクトルデータを
認識部に与えるので、最小限のニューロン数による高度
の認識処理が可能であり、また、認識部自体はデータの
抽象度に応じた層構造、データ入力構成であるため、極
めて効率的な構成により所望の認識処理を確実に実行し
得る。
好なベクトルデータが生成され、このベクトルデータを
認識部に与えるので、最小限のニューロン数による高度
の認識処理が可能であり、また、認識部自体はデータの
抽象度に応じた層構造、データ入力構成であるため、極
めて効率的な構成により所望の認識処理を確実に実行し
得る。
これによって、例えば印鑑照合、あるいはプリント配線
基板等の配線の欠けの検査等の品質管理を高精度に行う
ことができる。
基板等の配線の欠けの検査等の品質管理を高精度に行う
ことができる。
以上のように本発明によれば、ベクトルデータを用い、
少ないメモリ容量で高速かっ、より確実に図形認識を行
うことができる画像処理装置を得ることが可能となる。
少ないメモリ容量で高速かっ、より確実に図形認識を行
うことができる画像処理装置を得ることが可能となる。
第1図は本発明の実施例を適用した画像処理装置を示す
ブロック図、 第2図は一般的な神経細胞モデルを示す概念図、第3図
は一般的な神経細胞モデルを示す概念図、第4図は処理
部を示すブロック図、 第5図は認識部を示すブロック図、 第6図はフリーマンのチェーンコードを示す概念図、 第7図は具体的図形に反時計方向のチェーンコードを付
した状態を示す概念図、 第8図は直線部の処理態様を示す概念図、第9図は1画
素偏位しつつ連続する直線の処理を示す概念図、 第lO図てa)、(b)は凹の直角の処理をより詳細に
示す概念回、 第11図は他の凹の直角の処理を示す概念図、第12図
は他の凸の直角の処理を示す概念図、第13図は他の凸
の鋭角の処理を示す概念図、第14図(a)、(b)は
内周の処理を示す概念図、 第15図は外周の境界画素にチェーンコードを付す処理
を示す概念図、 第16図は内周の境界画素にチェーンコードを付す処理
を示す概念図、 第17図(a)は比較例を示す概念図、第17図(b)
は他の比較例を示す概念図、第17図(C)はニューラ
ルネットワークの第1実施例を示す概念図、 第18図(a)は図形処理における3x3コンボリュー
シゴンを示す図、 第18図(b)は各画素の図形濃度の状態を示す図、 第18図(C)はニューラルネットワークの第2実施例
を示す概念図、 第19図(a)はニューラルネットワークの第3実施例
を示す概念図、 第19図(b)はニューラルネットワークの第4実施例
を示す概念図、 第20図(a)は比較例を示す概念図、第20図(b)
はニューラルネットワークの第5実施例を示す概念図、 第21図(a)は比較例を示す概念図、第21図(b)
はニューラルネットワークの第6実施例を示す概念図、 第22図はモード■の学習を行うニューラルネットワー
クの概念図、 第23図はモードHの学習を行うニューラルネットワー
クの概念図、 第24図は重みの時間的変化を示すグラフ、第25図(
a)はニューラルネットワークの第7実施例を示す概念
図、 第25図(b)はニューラルネットワークの第8実施例
を示す概念図、 第25図(C)はニューラルネッ1・ワークの第9実施
例を示す概念図、 第26図はニューラルネットワークの第10実施例を示
す概念図、 第27図はニューラルネットワークの第11実施例を示
す概念図、 第28図はニューラルネットワークの第12実施例を示
す概念図である。 20、30、40、50、90 ・・・ニューラルレイヤ 21〜24、31〜34、41、42 91〜93・・・ニューロン 100・・・認識部(図形認識手段) 200・・・入力部 300・・・画像処理部(ベクトルデータ抽出手段)
ブロック図、 第2図は一般的な神経細胞モデルを示す概念図、第3図
は一般的な神経細胞モデルを示す概念図、第4図は処理
部を示すブロック図、 第5図は認識部を示すブロック図、 第6図はフリーマンのチェーンコードを示す概念図、 第7図は具体的図形に反時計方向のチェーンコードを付
した状態を示す概念図、 第8図は直線部の処理態様を示す概念図、第9図は1画
素偏位しつつ連続する直線の処理を示す概念図、 第lO図てa)、(b)は凹の直角の処理をより詳細に
示す概念回、 第11図は他の凹の直角の処理を示す概念図、第12図
は他の凸の直角の処理を示す概念図、第13図は他の凸
の鋭角の処理を示す概念図、第14図(a)、(b)は
内周の処理を示す概念図、 第15図は外周の境界画素にチェーンコードを付す処理
を示す概念図、 第16図は内周の境界画素にチェーンコードを付す処理
を示す概念図、 第17図(a)は比較例を示す概念図、第17図(b)
は他の比較例を示す概念図、第17図(C)はニューラ
ルネットワークの第1実施例を示す概念図、 第18図(a)は図形処理における3x3コンボリュー
シゴンを示す図、 第18図(b)は各画素の図形濃度の状態を示す図、 第18図(C)はニューラルネットワークの第2実施例
を示す概念図、 第19図(a)はニューラルネットワークの第3実施例
を示す概念図、 第19図(b)はニューラルネットワークの第4実施例
を示す概念図、 第20図(a)は比較例を示す概念図、第20図(b)
はニューラルネットワークの第5実施例を示す概念図、 第21図(a)は比較例を示す概念図、第21図(b)
はニューラルネットワークの第6実施例を示す概念図、 第22図はモード■の学習を行うニューラルネットワー
クの概念図、 第23図はモードHの学習を行うニューラルネットワー
クの概念図、 第24図は重みの時間的変化を示すグラフ、第25図(
a)はニューラルネットワークの第7実施例を示す概念
図、 第25図(b)はニューラルネットワークの第8実施例
を示す概念図、 第25図(C)はニューラルネッ1・ワークの第9実施
例を示す概念図、 第26図はニューラルネットワークの第10実施例を示
す概念図、 第27図はニューラルネットワークの第11実施例を示
す概念図、 第28図はニューラルネットワークの第12実施例を示
す概念図である。 20、30、40、50、90 ・・・ニューラルレイヤ 21〜24、31〜34、41、42 91〜93・・・ニューロン 100・・・認識部(図形認識手段) 200・・・入力部 300・・・画像処理部(ベクトルデータ抽出手段)
Claims (1)
- (1)図形を構成する画素データをベクトル化するベク
トルデータ抽出手段と、 このベクトルデータ抽出手段に接続され、入力されたデ
ータに所定の重みを乗じたものの総和と閾値との比較結
果に応じたデータを出力するニューロンが並列的に設け
られるとともに、ベクトルデータの抽象度に応じた層構
造のニューラルレイヤを有し、該ベクトルデータに基づ
いて図形を認識する手段とを備えた画像処理装置。
Priority Applications (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1112820A JPH02292686A (ja) | 1989-05-06 | 1989-05-06 | 画像処理装置 |
| AT90906368T ATE159601T1 (de) | 1989-05-06 | 1990-04-25 | Datenbehandlungssystem |
| DE69031621T DE69031621T2 (de) | 1989-05-06 | 1990-04-25 | Datenbehandlungssystem |
| EP90906368A EP0457909B1 (en) | 1989-05-06 | 1990-04-25 | Data processing system |
| PCT/JP1990/000535 WO1990013874A1 (fr) | 1989-05-06 | 1990-04-25 | Systeme de traitement de donnees |
| US08/461,538 US5553196A (en) | 1989-04-05 | 1995-06-05 | Method for processing data using a neural network having a number of layers equal to an abstraction degree of the pattern to be processed |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1112820A JPH02292686A (ja) | 1989-05-06 | 1989-05-06 | 画像処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH02292686A true JPH02292686A (ja) | 1990-12-04 |
Family
ID=14596353
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1112820A Pending JPH02292686A (ja) | 1989-04-05 | 1989-05-06 | 画像処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH02292686A (ja) |
-
1989
- 1989-05-06 JP JP1112820A patent/JPH02292686A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111417963B (zh) | 改进的尖峰神经网络 | |
| KR101298393B1 (ko) | 그래픽 처리 유닛 상에서 콘볼루션 신경망을 트레이닝하는방법 | |
| CN107111782B (zh) | 神经网络结构及其方法 | |
| US10776662B2 (en) | Weakly-supervised spatial context networks to recognize features within an image | |
| US20200349447A1 (en) | Optimizing Unsupervised Generative Adversarial Networks via Latent Space Regularizations | |
| KR20180004898A (ko) | 딥러닝 기반의 이미지 처리 기술 및 그 방법 | |
| CN107944545A (zh) | 应用于神经网络的计算方法及计算装置 | |
| CN114549698B (zh) | 文本合成方法、装置及电子设备 | |
| CN110968235A (zh) | 信号处理装置及相关产品 | |
| KR20240165675A (ko) | 멀티 모달리티 의료 영상에 대한 영상 진단 방법 | |
| CN111353577B (zh) | 基于多任务的级联组合模型的优化方法、装置及终端设备 | |
| CN115880176A (zh) | 多尺度非成对水下图像增强方法 | |
| JPH02292686A (ja) | 画像処理装置 | |
| CN108960246A (zh) | 一种用于图像识别的二值化处理装置及方法 | |
| CN118628866A (zh) | 基于稳定扩散模型的火星图像增广方法、计算设备和存储介质 | |
| CN114419249A (zh) | 物体三维形状重建方法、装置、设备及存储介质 | |
| CN113313239A (zh) | 人工智能模型设计优化方法及装置 | |
| CN116433987B (zh) | 基于残差姿态胶囊路由的图像分类方法 | |
| JPH06266688A (ja) | 大規模情報認識回路 | |
| Bijjani et al. | An M-ary neural network model | |
| Austin | ADAM: An Associative neural architecture for invariant pattern classification | |
| Yáñez et al. | Pattern recognition and classification using weightless neural networks (WNN) and Steinbuch Lernmatrix | |
| CN118446303B (zh) | 一种业务数据处理方法、模型训练方法和相关设备 | |
| JPH02300870A (ja) | 画像処理装置 | |
| KR102322927B1 (ko) | 인공신경망을 이용한 진단 영상을 구분하기 위한 장치, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 |