SlideShare a Scribd company logo
1 of 25
Download to read offline
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

Latinoware relatório
Latinoware relatórioLatinoware relatório
Latinoware relatórioCesar Brod
 
Se eu fosse a Microsoft
Se eu fosse a MicrosoftSe eu fosse a Microsoft
Se eu fosse a MicrosoftCesar Brod
 
IWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en BrasilIWEEE 2010 - Software Libre en Brasil
IWEEE 2010 - Software Libre en BrasilCesar Brod
 
A EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBALA EVOLUCAO DA ECONOMIA GLOBAL
A EVOLUCAO DA ECONOMIA GLOBALCarlos Ribeiro
 
Corporate lessons
Corporate lessonsCorporate lessons
Corporate lessonsguest75b9bf
 
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 2008karlsen
 
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 2008karlsen
 
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 PerceptualAlessandro Faria
 
Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008Nursing 499 (Carriere), Spring 2008
Nursing 499 (Carriere), Spring 2008karlsen
 
From Meme To Social Fabric
From Meme To Social FabricFrom Meme To Social Fabric
From Meme To Social Fabricewcslides
 
EngWri 300 (Magneson)
EngWri 300 (Magneson)EngWri 300 (Magneson)
EngWri 300 (Magneson)karlsen
 
Engwr300 Hansen
Engwr300 HansenEngwr300 Hansen
Engwr300 Hansenkarlsen
 
Engwr300 Garyfall08
Engwr300 Garyfall08Engwr300 Garyfall08
Engwr300 Garyfall08karlsen
 
Between Tiger And Crocodile
Between Tiger And CrocodileBetween Tiger And Crocodile
Between Tiger And Crocodileewcslides
 

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.

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 knowDynatrace
 
Intro to computer vision in .net
Intro to computer vision in .netIntro to computer vision in .net
Intro to computer vision in .netStephen Lorello
 
GDSC NCU Flutter
GDSC NCU FlutterGDSC NCU Flutter
GDSC NCU FlutterNCUDSC
 
Developing Google Glass
Developing Google GlassDeveloping Google Glass
Developing Google GlassJohnny 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 fingerprintpraful 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 AnalysisC4Media
 
jQuery Mobile & PhoneGap
jQuery Mobile & PhoneGapjQuery Mobile & PhoneGap
jQuery Mobile & PhoneGapSwiip
 
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 2016Christian Schneider
 
OpenGL L02-Transformations
OpenGL L02-TransformationsOpenGL L02-Transformations
OpenGL L02-TransformationsMohammad Shaker
 
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
 
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 quoIvano Pagano
 
Testing TYPO3 Applications
Testing TYPO3 ApplicationsTesting TYPO3 Applications
Testing TYPO3 ApplicationsAndré 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

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 

Recently uploaded (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 

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.