当前位置: 首页 > news >正文

网站建设推广优化话术wordpress 高德地图

网站建设推广优化话术,wordpress 高德地图,专做坏消息的网站,公众号开发用什么语言android 开发人员#xff0c;可能熟悉使用activities, fragments, intents以及最重要的一系列开源依赖库。但是#xff0c;注入需要本机功能的依赖关系(如计算机视觉框架)并不像在 gradle 文件中直接添加实现语句那样简单#xff01;今天#xff0c;将专注于使用 OpenCV 库… android 开发人员可能熟悉使用activities, fragments, intents以及最重要的一系列开源依赖库。但是注入需要本机功能的依赖关系(如计算机视觉框架)并不像在 gradle 文件中直接添加实现语句那样简单今天将专注于使用 OpenCV 库将其作为依赖项注入到你的 android 应用程序中。那么我们将从这次讨论中得到什么我们将能够创建一个 android 应用程序并执行所需的步骤来集成 OpenCV。此外我们将完成一个基于SIFT技术的图像特征检测算法。这将是你考虑构建自己的 SDK 的良好起点。什么是SIFTSIFT 代表尺度不变傅立叶变换Scale Invariant Fourier Transform。检测器用于查找图像上的兴趣点。它使我们能够识别图像中的局部特征。SIFT 的优势在于即使我们大幅缩放图像它也能正常工作因为它将图像数据转换为尺度不变坐标。SIFT 使用“关键点”来表示图像中缩放和旋转不变的局部特征。这是我们将其用于各种应用程序如图像匹配、对象检测、场景检测等的基准。为了识别关键点该算法为你完成第 1 步形成尺度空间——这一步确保特征与尺度无关。第 2 步关键点定位——这一步有助于识别合适的特征/关键点。第 3 步方向对齐——这一步确保关键点是旋转后不变的。第 4 步关键点描述符——这是为每个关键点创建描述符的最后一步。从这里我们可以使用关键点和描述符来进行特征匹配。现在让我们设置android项目打开Android Studio-New Project-Empty Activity从以下链接下载 OpenCV 4.5.1https://sourceforge.net/projects/opencvlibrary/files/4.5.1/opencv-4.5.1-android-sdk.zip/download提取文件夹然后将 java 文件夹重命名为 OpenCVLibrary451然后使用 File-New-Import Module 并选择文件夹单击完成。然后你必须看到该库已添加到你的项目中。点击 File-Project Structure-Dependencies 并选择 app.单击添加依赖项然后选择 OpenCVLibrary451确保选中JDK 11如果没有请转到 gradle 设置并将目标版本更改为1.8。我们只需要再添加 JNI 库以便调用 SIFT OpenCV 本机函数。将以下内容粘贴到应用程序的构建 gradle 文件中。android下defaultConfig下面sourceSets{main {jniLibs.srcDirs  [libs]}}然后将几个文件复制粘贴到你在开始时提取的 opencv 文件夹 [from /OpenCV-android-sdk/sdk/native/libs] 下。转到项目的 app 文件夹创建一个名为 libs 的文件夹并粘贴文件。同样在应用程序的主文件夹中创建一个名为 cpp 的文件夹然后粘贴 /OpenCV-android-sdk/sdk/libcxx_helper 中的文件。你之前提取的那个。在 android 下 app 的 build gradle 文件中粘贴以下内容externalNativeBuild {cmake {path file(src/main/cpp/CMakeLists.txt)version 3.18.1} }同步 grade 文件。如果一切顺利你将看到应用程序的构建。要测试应用程序请将 bmp 粘贴到可绘制对象中。我在这里使用了 used test.bmp。收集 bmp 文件后将以下内容粘贴到 resources-layout-activity_main.xml?xml version1.0 encodingutf-8? androidx.constraintlayout.widget.ConstraintLayout xmlns:androidhttp://schemas.android.com/apk/res/androidxmlns:apphttp://schemas.android.com/apk/res-autoxmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parenttools:context.MainActivityTextViewandroid:idid/sample_textandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:textHello OpenCV Android!!!app:layout_constraintBottom_toBottomOfparentapp:layout_constraintLeft_toLeftOfparentapp:layout_constraintRight_toRightOfparentapp:layout_constraintTop_toTopOfparent /ImageViewandroid:idid/imageViewandroid:layout_widthwrap_contentandroid:layout_heightwrap_contentapp:layout_constraintBottom_toTopOfid/sample_textapp:layout_constraintEnd_toEndOfparentapp:layout_constraintHorizontal_bias0.498app:layout_constraintStart_toStartOfparentapp:layout_constraintTop_toTopOfparentapp:layout_constraintVertical_bias0.641app:srcCompatdrawable/ic_launcher_background //androidx.constraintlayout.widget.ConstraintLayout然后将以下代码粘贴到 ActivityMain.kt 中package com.augray.siftandroidimport android.graphics.Bitmap import android.graphics.BitmapFactory import android.os.Bundle import android.view.View import android.widget.ImageView import android.widget.TextView import androidx.appcompat.app.AppCompatActivity import org.opencv.android.Utils import org.opencv.core.Mat import org.opencv.core.MatOfKeyPoint import org.opencv.features2d.Features2d import org.opencv.features2d.SIFT import org.opencv.imgproc.Imgprocclass MainActivity : AppCompatActivity() {companion object {// Used to load the native-lib library on application startup.init {System.loadLibrary(native-lib)System.loadLibrary(opencv_java4)}}private var imageView: ImageView?  null// make bitmap from image resourceprivate var inputImage: Bitmap?  nullprivate val sift  SIFT.create()override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)inputImage  BitmapFactory.decodeResource(resources, R.drawable.test)imageView  findViewByIdView(R.id.imageView) as ImageViewdetectAndDrawKeypoints()}fun detectAndDrawKeypoints() {val rgba  Mat()Utils.bitmapToMat(inputImage, rgba)val keyPoints  MatOfKeyPoint()Imgproc.cvtColor(rgba, rgba, Imgproc.COLOR_RGBA2GRAY)sift.detect(rgba, keyPoints)Features2d.drawKeypoints(rgba, keyPoints, rgba)Utils.matToBitmap(rgba, inputImage)imageView!!.setImageBitmap(inputImage)}}让我们看一下上面的一些代码以便更好地理解System.loadLibrary(native-lib) System.loadLibrary(opencv_java4)当 cmake 为我们构建所有类并准备就绪时我们仍然没有 SIFT 模块很遗憾它移到了新版本 OpenCV 中的其他库中。函数 detectAndDrawKeypoints() 获取位图并将其转换为图像数组矩阵/多维数组并使用 SIFT 模块检测关键点。如果图像具有良好的对比度、细节和较少重复的图案检测将产生尽可能多的关键点。构建并运行应用程序我们刚刚检测到图像中的特征。我们现在可以扩展它来拍摄另一张图像获取它的关键点并最终匹配它们以获得相似性。你可以在下面的存储库中找到代码https://github.com/sriyan983/SIFTAndroid.git☆ END ☆如果看到这里说明你喜欢这篇文章请转发、点赞。微信搜索「uncle_pn」欢迎添加小编微信「 woshicver」每日朋友圈更新一篇高质量博文。↓扫描二维码添加小编↓
http://www.ho-use.cn/article/10812701.html

相关文章:

  • 呼和浩特网站建设电话网站建设制作设计营销 中山
  • 西安有哪些网站建设外包公司wordpress怎么插视频
  • 冀州建设局网站如何进行医药网站建设
  • 做购物网站的步骤大竹县国示建设专题网站
  • 钦州房产网站建设番禺网站 建设信科网络
  • 网站中加入地图鞍山做网站优化
  • 网站制作工具网站上如何做跳转页面
  • 石家庄网站建设q.479185700棒临汾网站建设费用
  • 深圳网站设计小程序wordpress手机同步
  • 新乡建站温州百度推广排名优化
  • 大良做网站的公司房产网站排行
  • 商城网站建设报价单灌南住房建设局网站
  • 南宁网站建设怎样建立一个好网站wordpress 安装 数据库
  • 十堰做网站排名进入百度公司很难吗
  • 南通高端网站建设开发郑州设计师网站
  • 鹤山做网站珠海学网站开发
  • 广州网站建设快速排名了解网站开发 后台流程
  • 赣州专业做网站微信小程序开发图解案例教程
  • 深圳做网站的公司排行网站访客qq抓取原理
  • php网站开发打不开o2o电商网站
  • 荆州北京网站建设如何查网站备案信息
  • 接收新网站如何做诊断上海做网站哪家好
  • 郑州制作网站推荐wordpress+学校模版
  • vs 2012网站开发wordpress把菜单移动位置
  • 网站开发时间进度表 开发费用django怎么做网站
  • 大连网站建设好的公司那个网站做搬家推广比较好
  • 上海网站制作库榆公司网站免费建立
  • 区校合作网站建设方案怎么查询网站开发公司
  • 网站页面宽度深圳设计公司深圳市广告设计公司
  • 全广告网站安徽网站设计哪家效果好