Android Application Programming with OpenCV (Paperback)

Joseph Howse

買這商品的人也買了...

商品描述

 

Overview

  • Set up OpenCV and an Android development environment on Windows, Mac, or Linux
  • Capture and display real-time videos and still images
  • Manipulate image data using OpenCV and Apache Commons Math
  • Track objects and render 2D and 3D graphics on top of them
  • Create a photo-capture and photo-sharing app that supports a variety of filters with a real-time preview feature

In Detail

Take a smartphone from your pocket, and within a few seconds, you can snap a photo, manipulate it, and share it with the world. You have just achieved mass production of image data. With a computer vision library such as OpenCV, you can analyze and transform copious amounts of image data in real time on a mobile device. The upshot to this is that you, as developers, can provide mobile users with many new kinds of images, constantly highlighting certain visual features that are of artistic or practical interest. Android is a convenient platform for such experiments because it uses a high-level language (Java), it provides standardized interfaces for sharing image data between applications, and it is mostly open source, so everyone can study its implementation.

Android Application Programming with OpenCV is a practical, hands-on guide that covers the fundamental tasks of computer vision—capturing, filtering, and analyzing images-with step-by-step instructions for writing both an application and reusable library classes.

Android Application Programming with OpenCV looks at OpenCV's Java bindings for Android and dispels mysteries such as which version of these bindings to use, how to integrate with standard Android functionality for layout, event handling, and data sharing, and how to integrate with OpenGL for rendering. By following the clear, concise, and modular examples provided in this book, you will develop an application that previews, captures, and shares photos with special effects based on color manipulation, edge detection, image tracking, and 3D rendering.Beneath the application layer, you will develop a small but extensible library that you can reuse in your future projects. This library will include filters for selectively modifying an image based on edge detection, 2D and 3D image trackers, and adapters to convert the Android system's camera specifications into OpenCV and OpenGL projection matrices. If you want a quick start in computer vision for Android, then this is the book for you.

By the end of Android Application Programming with OpenCV, you will have developed a computer vision application that integrates OpenCV, Android SDK, and OpenGL.

What you will learn from this book

  • Install OpenCV and an Android development environment on Windows, Mac, or Linux
  • Capture, display, and save images
  • Make images accessible to other apps via Android's MediaStore and Intent classes
  • Integrate OpenCV events and views with Android's standard activity lifecycle and view hierarchy
  • Learn how OpenCV uses matrices to store data about images, recognizable features in images, and camera characteristics
  • Apply curves and other color transformations to simulate the look of old photos, movies, or video games
  • Apply convolution filters that sharpen, blur, emboss, or darken edges and textures in an image
  • Track real-world objects, especially printed images, in 2D and 3D space
  • Extract camera data from Android SDK and use it to construct OpenCV and OpenGL projection matrices
  • Render basic 3D graphics in OpenGL

商品描述(中文翻譯)

概述

- 在Windows、Mac或Linux上設置OpenCV和Android開發環境
- 捕捉和顯示即時視頻和靜態圖像
- 使用OpenCV和Apache Commons Math操作圖像數據
- 追蹤物體並在其上繪製2D和3D圖形
- 創建一個支持各種濾鏡和實時預覽功能的照片捕捉和分享應用程序

詳細內容

拿出口袋中的智能手機,幾秒鐘內就可以拍照、處理照片並與世界分享。您剛剛實現了圖像數據的大規模生產。使用OpenCV等計算機視覺庫,您可以在移動設備上實時分析和轉換大量圖像數據。這樣做的好處是,作為開發人員,您可以為移動用戶提供許多新型圖像,不斷突出某些藝術或實用特徵。Android是進行此類實驗的便利平台,因為它使用高級語言(Java),提供了在應用程序之間共享圖像數據的標準化接口,並且它大多是開源的,所以每個人都可以研究其實現。

《Android Application Programming with OpenCV》是一本實用的、實踐性的指南,涵蓋了計算機視覺的基本任務-捕捉、過濾和分析圖像-並提供了撰寫應用程序和可重用庫類的逐步指導。

《Android Application Programming with OpenCV》介紹了OpenCV在Android上的Java綁定,並解決了一些謎團,例如使用哪個版本的這些綁定,如何與佈局、事件處理和數據共享的標準Android功能集成,以及如何與OpenGL集成進行渲染。通過遵循本書提供的清晰、簡潔和模塊化示例,您將開發一個應用程序,該應用程序基於顏色操作、邊緣檢測、圖像跟踪和3D渲染,預覽、捕捉和分享照片的特殊效果。在應用程序層下,您將開發一個小而可擴展的庫,可以在未來的項目中重用。該庫將包括根據邊緣檢測選擇性修改圖像的濾鏡、2D和3D圖像跟踪器以及將Android系統的相機規格轉換為OpenCV和OpenGL投影矩陣的適配器。如果您想快速入門Android的計算機視覺,那麼這本書就是為您而寫的。

通過《Android Application Programming with OpenCV》,您將開發一個集成了OpenCV、Android SDK和OpenGL的計算機視覺應用程序。

本書的學習重點

- 在Windows、Mac或Linux上安裝OpenCV和Android開發環境
- 捕捉、顯示和保存圖像
- 通過Android的MediaStore和Intent類使圖像對其他應用程序可訪問
- 將OpenCV事件和視圖與Android的標準活動生命周期和視圖層次結構集成
- 了解OpenCV如何使用矩陣存儲有關圖像、可識別特徵和相機特性的數據
- 應用曲線和其他顏色轉換來模擬舊照片、電影或視頻遊戲的外觀
- 應用卷積濾鏡對圖像中的邊緣和紋理進行銳化、模糊、浮雕或變暗處理
- 在2D和3D空間中追蹤現實世界物體,特別是印刷圖像
- 從Android SDK中提取相機數據並使用它構建OpenCV和OpenGL投影矩陣
- 在OpenGL中渲染基本的3D圖形