十二、web增强现实

这篇具有很好参考价值的文章主要介绍了十二、web增强现实。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

AR.js基于三种方式展示AR内容:
1)Image Tracking
2)Location Based AR
3)Marker Tracking
        IMarker Tracking是最常见的基于maker的AR显示方式,下面的例子就是基于这个。Image Tracking顾名思义,就是基于一张图片去展示AR内容,其实原理和基于Marker Tracking类似,都是根据图片的特性点识别图片并跟踪。AR.js集成了A-Frame和three.js两个框架,基于这两个框架都能实现Image Tracking。
        图片要求,用于做Image Tracking的图片有一定要求,原则上图片越精细越好。推荐使用300dpi及以上的图片,72dpi的图片勉强可以,但是AR展示设备必须靠的很近,而且必须保持静止。
        生成图片对应的Image Descriptors,AR.js官方提供了web工具,可以将图片转换成Image Descriptors,AR.js其实是根据生成的Image Descriptors做图片识别和跟踪定位的。根据图片生成的Image Descriptors包含三个文件,分别为以.fset, .fset3, .iset为后缀名的文件。假设你生成的Image Descriptors文件名为:demo.fset, demo.fset3, demo.iset,那么你的Image Descriptors名字为demo(去除后缀名)。


1、用nginx搭建静态服务器
1)下载mkcert,运行以下命令
mkcert -install
mkcert localhost 127.0.0.1  www.myhost.com  172.20.10.4
将生成的2个文件拷贝到工程根目录的keys目录下
2) 下载nginx
下载后切到下载目录,配置,启动:
cd /d D:\sdk\nginx1.15\
nginx.conf:
    server {
        listen       443 ssl;
        server_name  172.20.10.4;

        ssl_certificate      d:/sdk/localhost+1.pem;
        ssl_certificate_key  d:/sdk/localhost+1-key.pem;

        location / {
            root D:/workspace/ai/arjs;
            index  index.html index.htm;
        }
    }
nginx -c conf\nginx.conf
如果有端口冲突,杀掉
netstat -aon|findstr "443"
taskkill -f -pid 18500
访问测试:
https://172.20.10.4/

2、下载模型
https://sketchfab.com/Sketchfab/models
随便下载一个免费的模型,格式为gltf;

3、编写应用
开源软件:https://github.com/AR-js-org/AR.js
进入后,点击Tags,在以下地址下载所有js,放在D:/workspace/ai/arjs目录下
https://github.com/AR-js-org/AR.js/releases/tag/3.4.5
在D:/workspace/ai/arjs下写index.html。注意这里的mynft与scene.gltf必须在相对目录中存在,否则加载不出来。

<!-- import aframe and then ar.js with image tracking / location based features -->
<script src="aframe-master.min.js"></script>
<script src="aframe-ar-nft.js"></script>
<script src="gestures.js"></script>

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>

<!-- style for the loader -->
<style>
  .arjs-loader {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .arjs-loader div {
    text-align: center;
    font-size: 1.25em;
    color: white;
  }
</style>

<body style="margin : 0px; overflow: hidden;">
  <!-- minimal loader shown until image descriptors are loaded. Loading may take a while according to the device computational power -->
  <div class="arjs-loader">
    <div>正在加载AR模型,请稍候...</div>
  </div>

  <!-- a-frame scene -->
  <a-scene vr-mode-ui="enabled: false;" gesture-detector renderer="logarithmicDepthBuffer: true;" embedded
    arjs="trackingMethod: best; sourceType: webcam;debugUIEnabled: false;">
    <a-nft type="nft" url="nft/mynft" smooth="true" smoothCount="10" smoothTolerance=".01"
      smoothThreshold="5">
      <!-- 展示模型的路径 -->
      <a-entity gltf-model="model/scene.gltf" scale="50 50 50"
        gesture-handler="minScale: 0.25; maxScale: 10" position="100 0 -200" rotation="-90 0 0">
      </a-entity>
    </a-nft>
    <!-- static camera that moves according to the device movemenents -->
    <a-entity camera="fov: 190"></a-entity>
  </a-scene>
</body>

4、手机访问测试
    确保手机和电脑在同一个wifi网络
    用ipconfig查看windows的ip地址,有多个地址,注意不要搞错了。
    然后用手机的浏览器访问:https://172.20.10.2/
    这时效果和用电脑访问是一样的,网址也一样;
    此时用苹果手机扫描指定的图片,就会在图片上方显示3d图。
    注意,如果用苹果手机,加载后没有打开摄像头的话,建议不要用safri,下载chrome浏览器即可。

效果如下图:

十二、web增强现实,AI图像处理模型与应用,前端,ar,vr

 文章来源地址https://www.toymoban.com/news/detail-561833.html

到了这里,关于十二、web增强现实的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【图像处理】使用 Python 进行图像增强

            图像增强技术的深度和复杂性往往在一系列捕获和共享中被忽视。从傅里叶变换到白平衡和直方图处理,各种方法都可以将普通照片转换为引人注目的图像。这篇博文旨在解开这些技术。         我在节日期间拍了一张照片,在夜间庆祝活动中。遗憾的是,图

    2024年02月16日
    浏览(76)
  • matlab数字图像处理之图像增强

    图像处理 基本目的之一是改善图像质量,而改善图像最常用的技术是图像增强的目的是为了改善图像的视觉效果,使图像更加清晰,便于人和计算机对图像进一步的分析和处理 图像质量 的基本含义是指人们对一幅图像视觉感受的评价。图像增强的目的就是为了改善图像显示

    2024年02月04日
    浏览(58)
  • 【数字图像处理】实验二 图像增强(MATLAB实现)

    目录 一、实验意义及目的 二、实验内容 三、Matlab 相关函数介绍 四、算法原理 五、参考代码及扩展代码流程图  (1)参考代码流程图 (2)扩展代码流程图 六、参考代码 七、实验要求 (1)对以上处理变换参数,查看处理效果; (2)更改伪彩色增强方法为热金属编码或彩

    2023年04月12日
    浏览(86)
  • 【计算机视觉】数字图像处理(四)—— 图像增强

    图像增强是采用一系列技术去改善图像的视觉效果,或将图像转换成一种更适合于人或机器进行分析和处理的形式。例如采用一系列技术有选择地突出某些感兴趣的信息,同时抑制一些不需要的信息,提高图像的使用价值。 图像增强方法 图像增强方法从增强的作用域出发,可

    2023年04月16日
    浏览(108)
  • 【数字图像处理】实验(2)——图像增强(MATLAB实现)

    (1)进一步掌握图像处理工具Matlab,熟悉基于Matlab的图像处理函数。 (2)掌握各种图像增强方法。 1.打开一幅彩色图像Image1,使用Matlab图像处理函数,对其进行下列变换: (1)将Image1灰度化为gray,统计并显示其灰度直方图; (2)对gray进行分段线性变换; (3)对gray进行

    2023年04月23日
    浏览(57)
  • 图像处理秘籍:12种图像增强方法。【附代码】

    使用场景:深色(黑色)背景的亮点(白点)检测 详情见: 对比度亮度图像增强及convertTo详解 实现: 简单介绍一下,暂时用不到。 直方图均衡化是对一整幅图像进行映射,并不会对某些区域局部映射,对于那些部分区域偏暗或者偏亮的图像而言并不适用。同时直方图均衡化后的

    2024年02月06日
    浏览(42)
  • (数字图像处理MATLAB+Python)第五章图像增强-第二节:基于直方图修正的图像增强

    基于直方图修正的图像增强 :是一种常见的图像处理方法。该方法通过对图像的像素值分布进行调整,以改善图像的对比度和亮度等视觉效果。具体地,直方图校正方法将图像的像素值转换为一个新的值域范围,使得像素值的分布更加均匀,从而增强图像的细节和对比度。这

    2023年04月19日
    浏览(58)
  • Python图像处理:频域滤波降噪和图像增强

    图像处理已经成为我们日常生活中不可或缺的一部分,涉及到社交媒体和医学成像等各个领域。通过数码相机或卫星照片和医学扫描等其他来源获得的图像可能需要预处理以消除或增强噪声。频域滤波是一种可行的解决方案,它可以在增强图像锐化的同时消除噪声。 快速傅里

    2024年02月01日
    浏览(60)
  • 数字图像处理与Python实现-图像增强经典算法汇总

    本文将对图像增强经典算法做一个简单的汇总。图像增强的经典算法有:像素变换、图像逆变换、幂律变换、对数变换、图像均衡化、对比受限自适应直方图均衡(CLAHE)、对比度拉伸、Sigmoid校正、局部对比度归一化。 转换是将一组输入映射到一组输出的函数,这样每个输入

    2024年02月09日
    浏览(54)
  • 图像处理与计算机视觉--第四章-图像滤波与增强-第二部分

    目录 1.图像噪声化处理与卷积平滑 2.图像傅里叶快速变换处理 3.图像腐蚀和膨胀处理 4 图像灰度调整处理 5.图像抖动处理算法    

    2024年02月07日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包