VisRecog Visual Recognition Module of the

First Working Artificial General Intelligence

ghost.pl for webservers -- MindForth for robots


1. Diagram of the VisRecog Mind-Module


   /^^^^^^^^\  VisRecog Finds Direct Object for a Verb  /^^^^\ 
  /   EYE    \              ____________               / EAR  \ 
 /            \            /  Sentence  \             /        \ 
|              |  | |     ( "I SEE A..." )           | auditory | 
|   _______    |  | |      \____________/            | memory   | 
|  / BIRD  \   |  | |          |                     | channel  | 
| / image   \--|----+    ______V________             |          | 
| \ engram  /  | a|c|f  /               \            |          | 
|  \_______/   | b|o|i (   VerbPhrase    )           |          | 
|              | s|n|b  \_______________/            |          | 
|   visual     | t|c|e   |     |        \            |          | 
|              | r|e|r   |   __V_____    \________   |          | 
|   memory     | a|p|s   |  /        \   /        \  |          | 
|              | c|t|    | ( VisRecog ) (NounPhrase) |          | 
|   channel    | t| |    |  \________/   \________/  |          | 
|              |  | |  __V______   |       |         |   "I"    | 
|    ______    |  | | ( English )  |       |         |          | 
|   /      \   |  | |  \ Verbs /---|-------|---------|- "SEE"   | 
|  /  new   \  |  | |   \_____/    |       |         |          | 
| /  percept \ |  |_|_           __V_______V____     |   "A"    | 
| \   of     / | /     \        /               \    |          | 
|  \  BIRD  /--|-\ Psy /-------(  English Nouns  )---|- "BIRD"  | 
|   \______/   |  \___/         \_______________/    |          |


2. Purpose

The VisRecog module for Visual Recognition integrates a robotic visual system with the thinking structures of the AI Mind.


3. Algorithm

Before vision is actually implemented for robot embodiment, VisRecog says by default: I SEE NOTHING.


4. Code of VisRecog() from ghost.pl First Working AGI in Perl

# The visual recognition module in the Perlmind for robots
# when fully implemented will serve the purpose of letting
# AI Minds dynamically describe what they see in real time
# instead of fetching knowledge from the AI knowledge base.
sub VisRecog() {  # http://ai.neocities.org/VisRecog.html
  # 2016jan22: NOTHING = default answer for "What do you see?"
  # http://medium.com/p/12c25b2570b2 -- How Strong AI recognizes an image
  # 2017-04-10: http://ai.neocities.org/VisRecog.gif -- animated VisRecog 
  if ($hlc eq "en") {  #2017-06-30: separate code for English and Russian...
    if ($svo4 == 0)  {  # 2017-04-11: if no direct object is available;
      for (my $i=$t; $i>$midway; $i--) {  # 2017-04-11: search for 760=NOTHING
        my @k=split(',',$psy[$i]);  # 2017-04-11: examine @psy array;
        if ($k[1] == 760) {  # 2017-06-08: if psi 760=NOTHING is found;
          $aud = $k[14];  # 2017-06-08: "NOTHING" recall-vector for Speech()
          last;  # 2017-04-11: exit from loop;
        }  # 2017-04-11: End of search for 760=NOTHING;
      }  # 2017-04-11: End of search loop from $t back to $midway.
    }  # 2017-04-11: end of test for a noun to fill in "I SEE ____".
  }  # 2017-06-30: end of test for English thinking.
  if ($hlc eq "ru") {  #2017-06-30: separate code for English and Russian...
    # 2017-06-30: Russian search for "1228=НИЧЕГО" or "NOTHING"
    if ($svo4 == 0)  {  # 2017-06-30: if no direct object is available;
      for (my $i=$t; $i>$midway; $i--) {  # 2017-06-30: search for 1228=НИЧЕГО
        my @k=split(',',$psy[$i]);  # 2017-06-30: examine @psy array;
        if ($k[1] == 1228) {  # 2017-06-30: if psi 1228=NOTHING is found;
          $nphrpos = $k[6];  # 2017-09-03: set for EnArticle.
          $aud = $k[14];  # 2017-06-30: "NOTHING" recall-vector for Speech()
          last;  # 2017-06-30: exit from loop;
        }  # 2017-06-30: End of search for 1228=NOTHING;
      }  # 2017-06-30: End of search loop from $t back to $midway.
    }  # 2017-05-40: end of test for a noun to fill in "I SEE ____".
  }  # 2017-06-30: end of test for Russian thinking.
  Speech();  # 2017-04-11: speak the word starting at the $aud time. 
  # http://www.starboundliterature.space/visual-art.html
} # VisRecog returns to Sensorium +/- NLP generation modules.


5. Troubleshooting and Robotic Psychosurgery

5.1.a. Symptom: (Something goes wrong.)
5.1.b. Solution: (AI Mind Maintainer devises solution.)


6. Variables

img -- for future use as "image".

$nphrpos -- "noun-phrase part-of-speech" for testing during the EnThink() process.

$svo4 -- direct object -- item #4 in subject-verb-object.


7. Future Development


8. Resources

Please see

http://mind.sourceforge.net/visrecog.html

http://github.com/kernc/mindforth/blob/master/wiki/VisRecog.wiki

http://www.scholarpedia.org/article/Color_vision

http://www.scholarpedia.org/article/Retina

http://cyborg.blogspot.com/search/label/VisRecog -- is a weblog URL which invites Netizens to view blog-posts discussing the VisRecog mind-module.


9. AiTree of First Working AGI Mind-Modules


Return to top; or to
http://en.wikipedia.org/wiki/Natural_language_understanding -- solved.
http://old.reddit.com/r/ControlProblem -- NOT SOLVED.
javascript subreddit for AI Mind discussion;
Forth subreddit for MindForth discussion;
Perl subreddit for ghost.pl AI Mind Maintainers.
If you have any questions about the First Working AGI, please Join the Discussion.