Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Assistive Context-Aware Toolkit (Portuguese)

382 vues

Publié le

Slides da palestra apresentada na trilha .NET do TDC Florianópolis de 2016

Publié dans : Technologie
  • DOWNLOAD FULL eBOOK INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... 1.DOWNLOAD FULL. PDF eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... 1.DOWNLOAD FULL. doc eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... 1.DOWNLOAD FULL. PDF eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... 1.DOWNLOAD FULL. EPUB eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... 1.DOWNLOAD FULL. doc eBook here { https://tinyurl.com/y3nhqquc } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, CookeBOOK Crime, eeBOOK Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Répondre 
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Soyez le premier à aimer ceci

Assistive Context-Aware Toolkit (Portuguese)

  1. 1. Assistive Context- Aware ToolkitFelipe Pedroso
  2. 2. #IntelNoTDC #IntelNoTDC
  3. 3. #IntelNoTDC Agenda • Stephen Hawking e Intel • O que é o ACAT? • Detalhes Técnicos • Arquitetura • Criando Extensões • Como? • RealSense + ACAT • SharpSenses + ACAT
  4. 4. #IntelNoTDC • O Professor Hawking conheceu Gordon Moore durante uma conferência em 1997, aonde ele ofereceu um PC com processador Intel • Desde então seu hardware é atualizado periodicamente, mas o capacidade de interagir está se deteriorando • Um time multi-disciplinar foi convocado para criar uma solução que permitisse ele se comunicar e interagir de maneira mais eficiente Stephen Hawking e Intel Fontes Imagens: http://www.astrosurf.com/luxorion/hawking-hommage9.htm http://www.wired.com/2015/01/intel-gave-stephen-hawking-voice/
  5. 5. #IntelNoTDC • Acrônimo para “Assistive Context- Aware Toolkit” • Permitir que pessoas com limitações físicas se comuniquem e controlem o computador através de um teclado virtual, predição de palavras e síntese de voz • Desenvolvido pela Intel Labs em conjunto com o Professor Hawking • Extensível e customizável O que é o ACAT?
  6. 6. #IntelNoTDC Open Source http://01.org/ACAT https://github.com/01org/acat
  7. 7. #IntelNoTDC Alguns detalhes técnicos • Roda no Windows 7 ou superior • Código escrito em C# usando Visual 2012 (funciona na 2015) e Microsoft* .NET Framework 4.5 • Microsoft* Office Interop Assemblies são usados para interagir com as apps do Office (Word e Outlook) • Algumas ferramentas utilizadas no desenvolvimento: • CodeMaid • StyleCop • ReSharper
  8. 8. #IntelNoTDC Arquitetura Apps ACAT Core Library ACAT Extension Library Extensions Extension Extension Extension ...
  9. 9. #IntelNoTDC Apps ACAT Qwerty ACAT Abc ACAT Tryout Talk Window
  10. 10. #IntelNoTDC ACAT Core Library - Componentes Word Prediction* Management UI Management AnimationsPanels Widgets Themes Text-to-Speech Management Talk Window Management *O ACAT utiliza o Presage, uma engine de predição de texto criada por Matteo Vescov. (http://presage.sourceforge.net)
  11. 11. #IntelNoTDC ACAT Core Library - Agentes
  12. 12. #IntelNoTDC ACAT Core Library - Atuadores Actuator Management Image Sources: http://www.psfk.com/2013/02/intel-stephen-hawking.html & https://commons.wikimedia.org/wiki/File:Assistive_device.JPG Actuators Proximity Sensor Assistive Switch Camera
  13. 13. #IntelNoTDC ACAT Extensions Library • Permite criar extensões/plugins para o ACAT • São carregadas dinamicamente durante o startup do aplicativo (reflection) • Possui as classes base e interfaces necessárias para implementar plugins Tipos de Extensão UI Word Predictors Agents Actuators Text-to-Speech Spell Checkers
  14. 14. #IntelNoTDC Criando um Atuador • Criar um projeto do tipo “Class Library” e adicionar referências para as DLLs “ACATCore.dll” e “ACATExtension.dll” • Estender as classes “ActuatorBase” e “ActuatorSwitchBase” • Implementar os métodos abstratos e usar os callbacks (Init, Resume, Pause, Dispose) para rodar a sua extensão (threads, configutação, etc) • Chamar os métodos OnSwitchActivated (Press), OnSwitchDeactivated (Release) ou OnSwitchTriggered(Click) para sinalizar a interação do usuário com o seu atuador • Fazer o deploy da sua DLL para a pasta de extensões e atualizar arquivos de configuração
  15. 15. #IntelNoTDC Intel® RealSense™ Intel® RealSense™ SDK Scene Understanding Enhanced Photography Augmented Reality Person & Face Tracking Gesture Recognition Background Removal Object Recognition and Tracking Speech Recognition 3D Object Scanning Hand & Blob Tracking User Facing World Facing
  16. 16. #IntelNoTDC Rastreamento (Posição) Landmarks (78 pontos) Pose / Orientação Expressões Reconhecimento Estimativa de pulso Intel® RealSense™ - Módulo de Face
  17. 17. #IntelNoTDC • Objetivo: criar um atuador que é controlado por expressões faciais • Componentes: • RealSenseExpressionTracker: Utiliza o RealSense SDK para perceber as expressões do usuário e notifica o atuador utilizando eventos • RealSenseActuator: “traduz” a intensidade das expressões em um “comportamento de botão” (press e release) Intel® RealSense™ - ACAT Plugin RealSense Actuator Extension ExpressionTracker Actuator Switch Actuator Management
  18. 18. #IntelNoTDC • O atuador de câmera que vem com o ACAT é um cliente de socket que espera a app “ACAT Vision”, que é um servidor de socket • A comunicação tem um protocolo simples e customizável através de arquivos de configuração • O “ACAT Vision” ainda não é open source, mas o código será liberado nas próximas versões Another way to connect an actuator ACAT Vision (Server) Camera Actuator (Client) Actuator Management
  19. 19. #IntelNoTDC • O SharpSenses* é uma biblioteca open source escrita em C# que simplifica o desenvolvimento de apps que usam o Intel® RealSense™ SDK. • Criada e mantida pelo André Carlucci (Intel Black Belt e Software Innovator), coordenador da trilha de .NET  • Disponível no Github* e NuGet* SharpSenses*
  20. 20. #IntelNoTDC • A idéia é criar um server “fake”, que replica a comunicação/protocolo do “ACAT Vision” • Para notificar a ação do usuário basta enviar a string “gesture=trigger;action=CT;conf=75;t ime=<TIMESTAMP>” • O ACAT também envia alguns eventos para o servidor (HideUI, ShowUI, ExitApp) SharpSenses* + ACAT ACAT Vision Camera Actuator (Client) Actuator Management ‘Fake’ Server SharpSenses
  21. 21. #IntelNoTDC Sumário • ACAT é uma boa opção para ajudar pessoas com limitações a se comunicar e interagir com seus computadores • Open Source: Você está mais do que convidado em criar seu fork do ACAT ou criar novos plugins • Extensões: vamos ajudar as pessoas com novos atuadores, agentes e novas funcionalidades  • O Intel® RealSense™ e o SharpSenses* podem ajudar a criar aplicações mais acessíveis
  22. 22. Dúvidas?
  23. 23. #IntelNoTDC Referências • Stephen Hawking e Intel • http://iq.intel.com/behind-scenes-intel-keeps-stephen-hawking-talking/ • http://www.wired.com/2015/01/intel-gave-stephen-hawking-voice/ • ACAT • https://github.com/01org/acat • http://01.org/ACAT • Intel® RealSense™ : https://software.intel.com/en-us/realsense/home • SharpSenses*: https://github.com/SharpSenses/SharpSenses
  24. 24. MUITO OBRIGADO! #INTELNOTDC
  25. 25. BAckup
  26. 26. #IntelNoTDC ACAT Server SharpSenses + ACAT SharpSenses bool canRun = true; AcatServer acatServer = new AcatServer(); acatServer.Start(); acatServer.AcatNotificationReceived += (sender, a) => { Console.WriteLine("Notification received from ACAT: {0}", a.NotificationType); if (a.NotificationType == AcatNotificationType.ExitApp) { canRun = false; } }; ICamera camera = Camera.Create(Capability.FaceTracking, Capability.FacialExpressionTracking); camera.Start(); camera.Face.LeftEye.Blink += (s,a) => { Console.WriteLine("SharpSenses: detected a blink from left eye."); acatServer.SendGestureMessage("CT", "trigger"); }; while (canRun) { } acatServer.Stop();

×