随书代码Mastering OpenCV with Practical Computer Vision Projects


1、Mastering OpenCV with Practical Computer Vision Projects 这本书的随书代码。 2、代码目录为: Chapter1_AndroidCartoonifier Chapter2_iPhoneAR Chapter3_MarkerlessAR Chapter4_StructureFromMotion Chapter5_NumberPlateRecognition Chapter6_NonRigidFaceTracking Chapter7_HeadPoseEstimation Chapter8_FaceRecognition Chapter9_FluidInteractionUsingKinect
资源截图
代码片段和文件信息
/*****************************************************************************
*   Cartoonifier for Android.
******************************************************************************
*   by Shervin Emami 5th Dec 2012 (shervin.emami@gmail.com)
*   http://www.shervinemami.info/
******************************************************************************
*   Ch1 of the book “Mastering OpenCV with Practical Computer Vision Projects“
*   Copyright Packt Publishing 2012.
*   http://www.packtpub.com/cool-projects-with-opencv/book
*****************************************************************************/

#include 
#include 
#include 
#include 


#include “cartoon.h“
#include “ImageUtils.h“ // Handy functions for debugging OpenCV images by Shervin Emami.


using namespace std;
using namespace cv;

extern “C“ {


// Just show the plain camera image without modifying it.
JNIEXPORT void JNICALL Java_com_Cartoonifier_CartoonifierView_ShowPreview(JNIEnv* env jobject
        jint width jint height jbyteArray yuv jintArray bgra)
{
    // Get native access to the given Java arrays.
    jbyte* _yuv  = env->GetByteArrayElements(yuv 0);
    jint*  _bgra = env->GetIntArrayElements(bgra 0);

    // Prepare a cv::Mat that points to the YUV420sp data.
    Mat myuv(height + height/2 width CV_8UC1 (uchar *)_yuv);
    // Prepare a cv::Mat that points to the BGRA output data.
    Mat mbgra(height width CV_8UC4 (uchar *)_bgra);

    // Convert the color format from the camera‘s
    // NV21 “YUV420sp“ format to an Android BGRA color image.
    cvtColor(myuv mbgra CV_YUV420sp2BGRA);

    // OpenCV can now access/modify the BGRA image if we want ...


    // Release the native lock we placed on the Java arrays.
    env->ReleaseIntArrayElements(bgra _bgra 0);
    env->ReleaseByteArrayElements(yuv _yuv 0);
}


DECLARE_TIMING(CartoonifyImage);


// Modify the camera image using the Cartoonifier filter.
JNIEXPORT void JNICALL Java_com_Cartoonifier_CartoonifierView_CartoonifyImage(JNIEnv* env jobject
        jint width jint height jbyteArray yuv jintArray bgra
        jboolean sketchMode jboolean alienMode jboolean evilMode jboolean debugMode)
{
    START_TIMING(CartoonifyImage);

    // Get native access to the given Java arrays.
    jbyte* _yuv  = env->GetByteArrayElements(yuv 0);
    jint*  _bgra = env->GetIntArrayElements(bgra 0);

    // Input color format (from camera):
    // “myuv“ is the color image in the camera‘s native NV21 YUV 420 “semi-planar“ format which means
    // the first part of the array is the grayscale pixel array followed by a quarter-sized pixel
    // array that is the U & V color channels interleaved. So if we just want to access a grayscale
    // image we can get it directly from the 1st part of a YUV420sp semi-planar image without any
    // conversions. But if we want a color image (eg: BGRA color format that i

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        444  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android.classpath

     文件       5500  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android.cproject

     文件       2972  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android.project

     文件        617  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android.settingsorg.eclipse.jdt.core.prefs

     文件       1349  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidAndroidManifest.xml

     文件       1538  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidjniAndroid.mk

     文件         84  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidjniApplication.mk

     文件       5308  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Androidjnijni_part.cpp

     文件        361  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Androidproject.properties

     文件       5760  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android
esdrawableicon.png

     文件        118  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Android
esvaluesstrings.xml

     文件       4003  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidsrccomCartoonifierCartoonifierApp.java

     文件      10271  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidsrccomCartoonifierCartoonifierView.java

     文件       9315  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_AndroidsrccomCartoonifierCartoonifierViewbase.java

     文件      13555  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Desktopcartoon.cpp

     文件       1634  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Desktopcartoon.h

     文件        290  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_DesktopCMakeLists.txt

     文件      21322  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_DesktopImageUtils.h

     文件      87458  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_DesktopImageUtils_0.7.cpp

     文件       6763  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierCartoonifier_Desktopmain_desktop.cpp

     文件       2952  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierREADME.txt

     文件     445637  2013-03-06 22:42  code-masterChapter1_AndroidCartoonifierscreenshot.png

     文件        773  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARAppDelegate.h

     文件       2612  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARAppDelegate.m

     文件        947  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARBGRAVideoframe.h

     文件       1917  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARCameraCalibration.cpp

     文件       1385  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARCameraCalibration.hpp

     文件       2195  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARcube.h

     文件        400  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedARDebugHelpers.hpp

     文件       1558  2013-03-06 22:42  code-masterChapter2_iPhoneARExample_MarkerbasedARExample_MarkerbasedAREAGLView.h

............此处省略346个文件信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)