因为工作中要使用 Android Camera2 API 来实现相机功能,但因为Camera2比较复杂,网上资料也比较乱,有一定入门门槛,所以花了几天时间系统研究了下,这个项目就是我研究的成果。 其中包括一个自己写的Camera2的Demo,支持预览、拍照和视频录制,以及若干个网上找的,具有参考价值的Camera2 Demo。 具体看我的博客 : https://blog.csdn.net/EthanCo/article/details/131371887 https://blog.csdn.net/EthanCo/article/details/131414981 https://blog.csdn.net/EthanCo/article/details/131418829
2024-07-27 10:59:39 41.34MB android Camera2 视频录制
1
虚拟相机是对应工业相机实物而言,它是软件模拟出来的相机,本质上是 运行在 pc 上的一段程序。 使用工业相机 SDK 开发需连接工业相机。而搭建真实的相机物理环境,有 时候颇费周章。为了解决有时不方便搭建真实环境的问题,我司开发了虚 拟相机小工具。工业相机 SDK 对虚拟相机和工业相机实物的访问完全一 致,这样用户在开发阶段就可以使用虚拟相机来代替工业相机实物进行开 发调试。该压缩包包含虚拟相机程序与说明文档。
2024-07-18 22:11:18 12.83MB
1
OrbitUnlimitedControls 的相机控制器,解决了一些其他广泛使用的控制器的一些局限性: 对于环视场景,OrbitControls是常见的选择。 但是通过垂直移动鼠标可以实现旋转的限制:相机不能“越过北极”或“越过南极”。 TrackballControls没有此限制。 然而,它受到围绕视轴的“扭曲”的困扰,该扭曲在交互过程中逐渐累积,并使其难以返回到原始方向。 它还不会在每次相机移动时都发出change事件,因此更新渲染以反映相机移动需要使用 。 OrbitUnlimitedControls没有这些限制。 它旨在实现OrbitControls的API(或至少该API的最重要部分),因此可以用作该控制器的简单替代品。 建设者 OrbitUnlimitedControls(object : Camera, domElement : HTMLDOMElement) o
2024-07-17 16:47:17 167KB JavaScript
1
基于ti KeyStone C66x多核定点/浮点DSP TMS320C665x,单核TMS320C6655和双核TMS320C6657管脚pin to pin兼容,同等频率下具有四倍于C64x+器件的乘累加能力; 主频1.0/1.25GHz,每核运算能力可高达40GMACS和20GFLOPS,包含2个Viterbi协处理器和1个Turbo协处理解码器,每核心32KByte L1P、32KByte L1D、1MByte L2,1MByte多核共享内存,8192个多用途硬件队列,支持DMA传输;
2024-07-14 11:24:00 1.19MB 图像采集 DSP
1
Qt+OpenCV图像视觉框架全套源码上位机源码 工具可扩展。 除了opencv和相机sdk的dll,其它所有算法均无封装,可以根据自己需要补充自己的工具。 基于 Qt5.14.2 + VS2019 + OpenCV 开发实现,支持多相机多线程,每个工具都是单独的 DLL,主程序通过公用的接口访问以及加载各个工具。 包含涉及图像算法的工具、 逻辑工具、通讯工具和系统工具等工具。
2024-07-12 08:55:06 861KB opencv
1
海康工业相机SDK的Demo源代码C++版本是专为机器视觉工程师设计的一款实用工具,它基于著名的图形用户界面库Qt进行开发,旨在帮助开发者更好地理解和应用海康工业相机的API功能,实现图像采集和设备控制。这个SDK库提供了丰富的功能,包括相机参数设置、图像获取、实时显示以及错误处理等,对于需要使用C++编程语言进行相机控制的项目尤为适用。 海康工业相机SDK的核心功能之一是图像采集。通过调用SDK中的接口函数,开发者可以实现对海康相机的触发模式、分辨率、帧率、曝光时间等关键参数的设置,以适应不同应用场景的需求。此外,SDK还提供了图像缓存管理机制,以确保高效稳定地获取图像数据。 该Demo展示了如何在C++环境中集成Qt库,构建一个简洁的用户界面,用于实时显示相机捕获的图像。Qt库的灵活性使得开发者可以轻松定制UI,添加如按钮、滑块等控件,以交互方式调整相机参数。同时,Qt的多平台特性意味着这个应用可以无缝运行在Windows、Linux或macOS等操作系统上。 再者,SDK包含了设备管理功能,允许开发者枚举系统中的所有海康相机,选择特定设备进行连接和控制。这对于拥有多个相机的系统尤其有用,可以通过SDK实现相机的自动发现和配置。 此外,Demo源码中还包含了错误处理机制,当调用SDK接口时可能出现的错误,如网络通信问题、设备状态异常等,都会被正确捕获并反馈给用户。这对于提高程序的稳定性和用户体验至关重要。 在实际应用中,开发者可以根据这个Demo进行二次开发,扩展更多高级功能,如图像处理、特征检测等。同时,学习和理解Demo的源代码也有助于深入掌握海康相机SDK的工作原理,从而更高效地利用其功能。 总结来说,海康工业相机SDK的Demo源代码C++版本是一个强大的开发资源,为机器视觉领域的工程师提供了便利的开发环境和实例参考。通过学习和实践,开发者可以快速上手海康相机的软件开发,提升项目实施效率。对于C++程序员来说,这是一个宝贵的资源,能够帮助他们在工业相机应用开发中取得成功。
2024-07-04 21:13:51 11.02MB
1
开发环境:vs2022 halcon 23.0.5 海康提供的类;MVCamera.cs 实例化海康提供的类,获取图像,然后在halcon 中实现模板匹配。 自己做一个test.shm模板存储在debug文档中,就可以实现模板匹配。 【核心代码】 1.定义相机对象,可以实现图像缩放平移,有些smartwindow 不稳定,可以换成Hwindcontrol控件显示 public Form1() { InitializeComponent(); hwindow = hSmartWindowControl1.HalconWindow;//初始化窗口变量s w_width = hSmartWindowControl1.Size.Width; w_height = hSmartWindowControl1.Size.Height; this.MouseWheel = new System.W
2024-06-27 16:29:55 28.4MB halcon 模板匹配 机器视觉
1
基于 Python 的相机标定 本资源摘要信息对基于 Python 的相机标定进行了详细的介绍。相机标定是计算机视觉领域中一个重要的概念,它的目的是为了获取摄像机的内外参数,以便进行图像处理和三维重构。 一、相机标定的原理 相机标定的原理可以分为四个坐标系:世界坐标系、相机坐标系、图像坐标系和像素坐标系。世界坐标系是一个三维直角坐标系,用于描述相机和待测物体的空间位置。相机坐标系也是一个三维直角坐标系,原点位于镜头光心处。图像坐标系是一个二维直角坐标系,反映了相机 CCD/CMOS 芯片中像素的排列情况。像素坐标系是一个二维直角坐标系,反映了图像中的像素排列情况。 二、相机标定的目的 相机标定的目的包括两方面:一是校正镜头畸变,以获取高质量的图像;二是根据获取的图像重构三维场景。 三、相机标定的总体原理 相机标定的总体原理是从世界坐标系换到图像坐标系的过程,也就是求最终的投影矩阵的过程。 四、相机参数标定 相机参数标定是通过一定方法求得上述成像模型中的各个未知量(5 个内参、6 个外参以及畸变参数)。这里主要介绍平面标定法,其操作相对简单,实际应用中很常用。 五、相机标定步骤 相机标定步骤包括以下几个步骤:用相机对其进行不同角度的拍摄,得到一组图像;对图像中的特征点进行检测,得到标定板角点的像素坐标值;计算得到标定板角点的物理坐标值;求解内参矩阵与外参矩阵;求解畸变参数;最后利用 L-M 算法对上述参数进行优化。 六、源代码编写 基于 Python 的相机标定可以使用 OpenCV 库来实现,通过编写 Python 代码来实现相机标定的各个步骤。 七、运行结果 对标定结果进行评价的方法是通过得到的摄像机内外参数,对空间的三维点进行重新投影计算,得到空间三维点在图像上新的投影点的坐标,计算投影坐标和亚像素角点坐标之间的偏差,偏差越小,标定结果越好。
2024-06-25 16:15:22 509KB python
小蚁运动相机修改版固件Z23固件修改为了下部三点点测光用于全景拍摄优化,不了解的请不要盲目升级,虽然小蚁正常是不死可刷的。
2024-06-10 20:32:54 43.93MB 运动相机 firmware.bin
1
基于opencv的双目相机标定程序,用的张正友的方法,非常好用的程序,使用前需要先获得单目相机标定的参数,然后带入此双目程序,再根据拍摄的两相机公共视场下的棋盘格的图像,就可以解算出两相机之间的位置关系,建立双目坐标系。