SlideShare a Scribd company logo
Alessandro de Oliveira Faria (A.K.A. Cabelo) 
Certiface e a tecnologia 
Intel no combate a Fraude.
AApprreesseennttaaççããoo 
Ingressou­se 
aos 12 anos no 
mercado de tecnologia/inovação. 
● Sócio fundador da NETi TECNOLOGIA; 
● Inventor da tecnologia Certiface; 
● 102 Artigos publicados na internet (Viva O Linux e outros); 
● Embaixador openSUSE na América Latina; 
● Experiência com Visão Computacional (openCV e GPU );
Br Fraudadores: Briiggaa ddee ggaattoo ee rraattoo!!
SUPER 
99,95% 
O Certiface: PPrrootteeggee aass ppeessssooaass
OO CCeerrttiiffaaccee:: OObbrriiggaaddoo IInntteell......
CCeerrttiiffaaccee:: NNaasscceeuu ggrraannddee......
PPCCLL :: PPooiinntt CClloouudd LLiibbrraarryy
IInnssttaallaaççããoo ee ccoonnffiigguurraaççããoo NNDDKK:: 
$ unzip android­ndk­r4b­linux­x86. 
zip 
Pronto o NDK esta instalado com sucesso!
public class HelloNDK extends Activity { 
TextView txtHello; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.main); 
txtHello = (TextView) findViewById(R.id.txtHello); 
String hello = sayHello(); 
txtHello.setText(hello); 
} 
public native String sayHello(); 
static { 
System.loadLibrary("hellondk"); 
} 
}
$ cd ~/workspace/HelloNDK 
$ javah ­o 
hellondk.h ­classpath 
bin com.cabelo.hellondk.HelloNDK 
$ mkdir jni 
$ cp hellondk.h jni/ 
$ cd jni 
$ vi hellondk.cpp 
#include <hellondk.h> 
JNIEXPORT jstring JNICALL 
Java_com_cabelo_hellondk_HelloNDK_sayHello(JNIEnv *env, jobject 
obj){ 
return env­> 
NewStringUTF("Hello, NDK!"); 
}
PictureCallback rawCallback = new PictureCallback() { 
public void onPictureTaken(byte[] _data, Camera _camera) { 
[ … ] } }; 
void 
Java_com_cabelo_GetFace_PreviewView_RgbToGray( JNIEnv* env, 
jobject this, jbyteArray src, jintArray dst ) 
{ 
jboolean b; 
jint len; 
jbyte* srcPtr=(*env)­> 
GetByteArrayElements(env,src,&b); 
jint* dstPtr=(*env)­> 
GetIntArrayElements(env,dst,&b); 
len = (*env)­> 
GetArrayLength(env,src); 
RGB32toGray8(srcPtr, dstPtr, len); 
(*env)­> 
ReleaseByteArrayElements(env, src, srcPtr, 0); 
(*env)­> 
ReleaseIntArrayElements(env, dst, dstPtr, 0); 
};
$ vi Application.mk 
APP_ABI := armeabi armeabi­v7a 
x86 
$ /usr/local/share/android­ndk­r4b/ 
ndk­build 
APP_ABI=all 
Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp 
SharedLibrary : libhellondk.so 
Install : libhellondk.so => ~/HelloNDK/libs/armeabi 
Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp 
SharedLibrary : libhellondk.so 
Install : libhellondk.so => ~/HelloNDK/libs/armeabi­v7 
Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp 
SharedLibrary : libhellondk.so 
Install : libhellondk.so => ~/HelloNDK/libs/x86
OOppeennCCVV ffoorr AAnnddrrooiidd 
10 x mais performático. 
http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html
TTBBBB ee IIPPPP ffoorr AAnnddrrooiidd 
https://software.intel.com/en-us/articles/using-intel-ipp-with-android-os 
https://www.threadingbuildingblocks.org/ 
gmake tbb tbbmalloc target=android 
https://software.intel.com/en-us/android/articles/android-tutorial-writing-a-multithreaded- 
application-using-intel-threading-building-blocks
DDeetteeccttaarr ffaacceess 
https://software.intel.com/en-us/blogs/2013/10/28/implementing-face-detection-in-android 
FaceDetector face_detector = new FaceDetector( 
background_image.getWidth(), 
background_image.getHeight(), MAX_FACES); 
faces = new FaceDetector.Face[MAX_FACES]; 
face_count = face_detector.findFaces(background_image, faces); 
Log.d("Face_Detection", "Face Count: " + 
String.valueOf(face_count));
Obrigado... 
alessandrofaria@netitec.com.br

More Related Content

Viewers also liked

OESP_Pg6_1115
OESP_Pg6_1115OESP_Pg6_1115
Latinoware relatório
Latinoware relatórioLatinoware relatório
Latinoware relatório
Cesar Brod
 
Se eu fosse a Microsoft
Se eu fosse a MicrosoftSe eu fosse a Microsoft
Se eu fosse a Microsoft
Cesar Brod
 
IWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en BrasilIWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en Brasil
Cesar Brod
 
A EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBALA EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBAL
Carlos Ribeiro
 
Corporate lessons
Corporate lessonsCorporate lessons
Corporate lessons
guest75b9bf
 
EngWri 300 (Gary)
EngWri 300 (Gary)EngWri 300 (Gary)
EngWri 300 (Gary)
karlsen
 
Art 372/373, Spring 2008
Art 372/373, Spring 2008Art 372/373, Spring 2008
Art 372/373, Spring 2008
karlsen
 
EngWri 300 (Silcox)
EngWri 300 (Silcox)EngWri 300 (Silcox)
EngWri 300 (Silcox)
karlsen
 
Eslr310 (Ford)
Eslr310 (Ford)Eslr310 (Ford)
Eslr310 (Ford)
karlsen
 
Eng 300 (Krumm), Spring 2008
Eng 300 (Krumm), Spring 2008Eng 300 (Krumm), Spring 2008
Eng 300 (Krumm), Spring 2008
karlsen
 
Hist311 (Piscopo)
Hist311 (Piscopo)Hist311 (Piscopo)
Hist311 (Piscopo)
karlsen
 
NURSE 425 (Holt)
NURSE 425 (Holt)NURSE 425 (Holt)
NURSE 425 (Holt)
karlsen
 
Certiface - Intel Perceptual
Certiface - Intel PerceptualCertiface - Intel Perceptual
Certiface - Intel Perceptual
Alessandro Faria
 
Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008
karlsen
 
From Meme To Social Fabric
From Meme To Social FabricFrom Meme To Social Fabric
From Meme To Social Fabric
ewcslides
 
EngWri 300 (Magneson)
EngWri 300 (Magneson)EngWri 300 (Magneson)
EngWri 300 (Magneson)
karlsen
 
Engwr300 Hansen
Engwr300 HansenEngwr300 Hansen
Engwr300 Hansen
karlsen
 
Engwr300 Garyfall08
Engwr300 Garyfall08Engwr300 Garyfall08
Engwr300 Garyfall08
karlsen
 
Between Tiger And Crocodile
Between Tiger And CrocodileBetween Tiger And Crocodile
Between Tiger And Crocodile
ewcslides
 

Viewers also liked (20)

OESP_Pg6_1115
OESP_Pg6_1115OESP_Pg6_1115
OESP_Pg6_1115
 
Latinoware relatório
Latinoware relatórioLatinoware relatório
Latinoware relatório
 
Se eu fosse a Microsoft
Se eu fosse a MicrosoftSe eu fosse a Microsoft
Se eu fosse a Microsoft
 
IWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en BrasilIWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en Brasil
 
A EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBALA EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBAL
 
Corporate lessons
Corporate lessonsCorporate lessons
Corporate lessons
 
EngWri 300 (Gary)
EngWri 300 (Gary)EngWri 300 (Gary)
EngWri 300 (Gary)
 
Art 372/373, Spring 2008
Art 372/373, Spring 2008Art 372/373, Spring 2008
Art 372/373, Spring 2008
 
EngWri 300 (Silcox)
EngWri 300 (Silcox)EngWri 300 (Silcox)
EngWri 300 (Silcox)
 
Eslr310 (Ford)
Eslr310 (Ford)Eslr310 (Ford)
Eslr310 (Ford)
 
Eng 300 (Krumm), Spring 2008
Eng 300 (Krumm), Spring 2008Eng 300 (Krumm), Spring 2008
Eng 300 (Krumm), Spring 2008
 
Hist311 (Piscopo)
Hist311 (Piscopo)Hist311 (Piscopo)
Hist311 (Piscopo)
 
NURSE 425 (Holt)
NURSE 425 (Holt)NURSE 425 (Holt)
NURSE 425 (Holt)
 
Certiface - Intel Perceptual
Certiface - Intel PerceptualCertiface - Intel Perceptual
Certiface - Intel Perceptual
 
Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008
 
From Meme To Social Fabric
From Meme To Social FabricFrom Meme To Social Fabric
From Meme To Social Fabric
 
EngWri 300 (Magneson)
EngWri 300 (Magneson)EngWri 300 (Magneson)
EngWri 300 (Magneson)
 
Engwr300 Hansen
Engwr300 HansenEngwr300 Hansen
Engwr300 Hansen
 
Engwr300 Garyfall08
Engwr300 Garyfall08Engwr300 Garyfall08
Engwr300 Garyfall08
 
Between Tiger And Crocodile
Between Tiger And CrocodileBetween Tiger And Crocodile
Between Tiger And Crocodile
 

Similar to Certiface e a tecnologia Intel no combate a fraude.

What Lies Beneath
What Lies BeneathWhat Lies Beneath
What Lies Beneath
Maurice Naftalin
 
4 Node.js Gotchas: What your ops team needs to know
4 Node.js Gotchas: What your ops team needs to know4 Node.js Gotchas: What your ops team needs to know
4 Node.js Gotchas: What your ops team needs to know
Dynatrace
 
Intro to computer vision in .net
Intro to computer vision in .netIntro to computer vision in .net
Intro to computer vision in .net
Stephen Lorello
 
GDSC NCU Flutter
GDSC NCU FlutterGDSC NCU Flutter
GDSC NCU Flutter
NCUDSC
 
Developing Google Glass
Developing Google GlassDeveloping Google Glass
Developing Google Glass
Johnny Sung
 
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one![DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
Synack
 
Samrt attendance system using fingerprint
Samrt attendance system using fingerprintSamrt attendance system using fingerprint
Samrt attendance system using fingerprint
praful borad
 
Beyond Breakpoints: A Tour of Dynamic Analysis
Beyond Breakpoints: A Tour of Dynamic AnalysisBeyond Breakpoints: A Tour of Dynamic Analysis
Beyond Breakpoints: A Tour of Dynamic Analysis
C4Media
 
jQuery Mobile & PhoneGap
jQuery Mobile & PhoneGapjQuery Mobile & PhoneGap
jQuery Mobile & PhoneGap
Swiip
 
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Christian Schneider
 
OpenGL L02-Transformations
OpenGL L02-TransformationsOpenGL L02-Transformations
OpenGL L02-Transformations
Mohammad Shaker
 
Introduction to Domain-Driven Design
Introduction to Domain-Driven DesignIntroduction to Domain-Driven Design
Introduction to Domain-Driven Design
Yoan-Alexander Grigorov
 
Integris Security - Hacking With Glue ℠
Integris Security - Hacking With Glue ℠Integris Security - Hacking With Glue ℠
Integris Security - Hacking With Glue ℠
Integris Security LLC
 
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
Publicis Sapient Engineering
 
Charlie Gerard- Mind Control in Javascript (Evolution)
Charlie Gerard- Mind Control in Javascript (Evolution)Charlie Gerard- Mind Control in Javascript (Evolution)
Charlie Gerard- Mind Control in Javascript (Evolution)
Thoughtworks
 
Dissecting BetaBot
Dissecting BetaBotDissecting BetaBot
Dissecting BetaBot
securityxploded
 
Running Intelligent Applications inside a Database: Deep Learning with Python...
Running Intelligent Applications inside a Database: Deep Learning with Python...Running Intelligent Applications inside a Database: Deep Learning with Python...
Running Intelligent Applications inside a Database: Deep Learning with Python...
Miguel González-Fierro
 
Questioning the status quo
Questioning the status quoQuestioning the status quo
Questioning the status quo
Ivano Pagano
 
Testing TYPO3 Applications
Testing TYPO3 ApplicationsTesting TYPO3 Applications
Testing TYPO3 Applications
André Wuttig
 
Taipei.py 2018 - Control device via ioctl from Python
Taipei.py 2018 - Control device via ioctl from Python Taipei.py 2018 - Control device via ioctl from Python
Taipei.py 2018 - Control device via ioctl from Python
Hua Chu
 

Similar to Certiface e a tecnologia Intel no combate a fraude. (20)

What Lies Beneath
What Lies BeneathWhat Lies Beneath
What Lies Beneath
 
4 Node.js Gotchas: What your ops team needs to know
4 Node.js Gotchas: What your ops team needs to know4 Node.js Gotchas: What your ops team needs to know
4 Node.js Gotchas: What your ops team needs to know
 
Intro to computer vision in .net
Intro to computer vision in .netIntro to computer vision in .net
Intro to computer vision in .net
 
GDSC NCU Flutter
GDSC NCU FlutterGDSC NCU Flutter
GDSC NCU Flutter
 
Developing Google Glass
Developing Google GlassDeveloping Google Glass
Developing Google Glass
 
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one![DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
[DefCon 2016] I got 99 Problems, but 
Little Snitch ain’t one!
 
Samrt attendance system using fingerprint
Samrt attendance system using fingerprintSamrt attendance system using fingerprint
Samrt attendance system using fingerprint
 
Beyond Breakpoints: A Tour of Dynamic Analysis
Beyond Breakpoints: A Tour of Dynamic AnalysisBeyond Breakpoints: A Tour of Dynamic Analysis
Beyond Breakpoints: A Tour of Dynamic Analysis
 
jQuery Mobile & PhoneGap
jQuery Mobile & PhoneGapjQuery Mobile & PhoneGap
jQuery Mobile & PhoneGap
 
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
Serial Killer - Silently Pwning your Java Endpoints // OWASP BeNeLux Day 2016
 
OpenGL L02-Transformations
OpenGL L02-TransformationsOpenGL L02-Transformations
OpenGL L02-Transformations
 
Introduction to Domain-Driven Design
Introduction to Domain-Driven DesignIntroduction to Domain-Driven Design
Introduction to Domain-Driven Design
 
Integris Security - Hacking With Glue ℠
Integris Security - Hacking With Glue ℠Integris Security - Hacking With Glue ℠
Integris Security - Hacking With Glue ℠
 
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
XebiCon'17 : Faites chauffer les neurones de votre Smartphone avec du Deep Le...
 
Charlie Gerard- Mind Control in Javascript (Evolution)
Charlie Gerard- Mind Control in Javascript (Evolution)Charlie Gerard- Mind Control in Javascript (Evolution)
Charlie Gerard- Mind Control in Javascript (Evolution)
 
Dissecting BetaBot
Dissecting BetaBotDissecting BetaBot
Dissecting BetaBot
 
Running Intelligent Applications inside a Database: Deep Learning with Python...
Running Intelligent Applications inside a Database: Deep Learning with Python...Running Intelligent Applications inside a Database: Deep Learning with Python...
Running Intelligent Applications inside a Database: Deep Learning with Python...
 
Questioning the status quo
Questioning the status quoQuestioning the status quo
Questioning the status quo
 
Testing TYPO3 Applications
Testing TYPO3 ApplicationsTesting TYPO3 Applications
Testing TYPO3 Applications
 
Taipei.py 2018 - Control device via ioctl from Python
Taipei.py 2018 - Control device via ioctl from Python Taipei.py 2018 - Control device via ioctl from Python
Taipei.py 2018 - Control device via ioctl from Python
 

Recently uploaded

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
Matthew Sinclair
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Zilliz
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
Pixlogix Infotech
 

Recently uploaded (20)

GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
20240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 202420240605 QFM017 Machine Intelligence Reading List May 2024
20240605 QFM017 Machine Intelligence Reading List May 2024
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
Introducing Milvus Lite: Easy-to-Install, Easy-to-Use vector database for you...
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website20 Comprehensive Checklist of Designing and Developing a Website
20 Comprehensive Checklist of Designing and Developing a Website
 

Certiface e a tecnologia Intel no combate a fraude.

  • 1. Alessandro de Oliveira Faria (A.K.A. Cabelo) Certiface e a tecnologia Intel no combate a Fraude.
  • 2. AApprreesseennttaaççããoo Ingressou­se aos 12 anos no mercado de tecnologia/inovação. ● Sócio fundador da NETi TECNOLOGIA; ● Inventor da tecnologia Certiface; ● 102 Artigos publicados na internet (Viva O Linux e outros); ● Embaixador openSUSE na América Latina; ● Experiência com Visão Computacional (openCV e GPU );
  • 3. Br Fraudadores: Briiggaa ddee ggaattoo ee rraattoo!!
  • 4. SUPER 99,95% O Certiface: PPrrootteeggee aass ppeessssooaass
  • 5.
  • 8.
  • 9. PPCCLL :: PPooiinntt CClloouudd LLiibbrraarryy
  • 10.
  • 11.
  • 12.
  • 13.
  • 14. IInnssttaallaaççããoo ee ccoonnffiigguurraaççããoo NNDDKK:: $ unzip android­ndk­r4b­linux­x86. zip Pronto o NDK esta instalado com sucesso!
  • 15. public class HelloNDK extends Activity { TextView txtHello; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); txtHello = (TextView) findViewById(R.id.txtHello); String hello = sayHello(); txtHello.setText(hello); } public native String sayHello(); static { System.loadLibrary("hellondk"); } }
  • 16. $ cd ~/workspace/HelloNDK $ javah ­o hellondk.h ­classpath bin com.cabelo.hellondk.HelloNDK $ mkdir jni $ cp hellondk.h jni/ $ cd jni $ vi hellondk.cpp #include <hellondk.h> JNIEXPORT jstring JNICALL Java_com_cabelo_hellondk_HelloNDK_sayHello(JNIEnv *env, jobject obj){ return env­> NewStringUTF("Hello, NDK!"); }
  • 17. PictureCallback rawCallback = new PictureCallback() { public void onPictureTaken(byte[] _data, Camera _camera) { [ … ] } }; void Java_com_cabelo_GetFace_PreviewView_RgbToGray( JNIEnv* env, jobject this, jbyteArray src, jintArray dst ) { jboolean b; jint len; jbyte* srcPtr=(*env)­> GetByteArrayElements(env,src,&b); jint* dstPtr=(*env)­> GetIntArrayElements(env,dst,&b); len = (*env)­> GetArrayLength(env,src); RGB32toGray8(srcPtr, dstPtr, len); (*env)­> ReleaseByteArrayElements(env, src, srcPtr, 0); (*env)­> ReleaseIntArrayElements(env, dst, dstPtr, 0); };
  • 18.
  • 19. $ vi Application.mk APP_ABI := armeabi armeabi­v7a x86 $ /usr/local/share/android­ndk­r4b/ ndk­build APP_ABI=all Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp SharedLibrary : libhellondk.so Install : libhellondk.so => ~/HelloNDK/libs/armeabi Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp SharedLibrary : libhellondk.so Install : libhellondk.so => ~/HelloNDK/libs/armeabi­v7 Compile++ thumb: hellondk <= ~/HelloNDK/jni/hellondk.cpp SharedLibrary : libhellondk.so Install : libhellondk.so => ~/HelloNDK/libs/x86
  • 20. OOppeennCCVV ffoorr AAnnddrrooiidd 10 x mais performático. http://docs.opencv.org/doc/tutorials/introduction/android_binary_package/O4A_SDK.html
  • 21. TTBBBB ee IIPPPP ffoorr AAnnddrrooiidd https://software.intel.com/en-us/articles/using-intel-ipp-with-android-os https://www.threadingbuildingblocks.org/ gmake tbb tbbmalloc target=android https://software.intel.com/en-us/android/articles/android-tutorial-writing-a-multithreaded- application-using-intel-threading-building-blocks
  • 22. DDeetteeccttaarr ffaacceess https://software.intel.com/en-us/blogs/2013/10/28/implementing-face-detection-in-android FaceDetector face_detector = new FaceDetector( background_image.getWidth(), background_image.getHeight(), MAX_FACES); faces = new FaceDetector.Face[MAX_FACES]; face_count = face_detector.findFaces(background_image, faces); Log.d("Face_Detection", "Face Count: " + String.valueOf(face_count));
  • 23.
  • 24.