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

苹果系统MacOS下ObjectC建立的App程序访问opencv加载图片程序

前言

    苹果系统下使用opencv感觉还是有些不太方便,总是感觉有点受到限制。本博客描述的是在MacOS下建立App程序然后调用opencv显示图片时出现的一些问题并最后解决的一个过程。

一、程序的建立

 选择程序的类型:

选择界面模式和编程语言:

其余类同,可参照我的另外二篇博客《苹果MacOS 调用自编译opencv的Dylib显示一个图片的C++程序的步骤》、《苹果系统MacOS下采用ObjectC访问opencv加载图片的一个简单实例》。

二、基本的测试程序

     在App的面板上放了一个Button按钮,点击一下就会产生一个提示信息,如图:

运行的时候会出现如下的提示,但是点“扔要打开”即可

(这是MacOS app程序调用了自编译的opencv的缘故)

点击按钮会有如下的提示:

至此说明程序结构已经完整有效。

三、加入opencv语句进行调试

     加入了opencv的语句,并配置了opencv的库和头文件等(相关配置可参考本文前面所提到的另外两篇博客),发现点击button按钮后,无法得到我们想要的结果,而是提示文件找不到或者无法加载,如下图所示:

     那么,我们对比《苹果系统MacOS下采用ObjectC访问opencv加载图片的一个简单实例》所对应的Command(Console)工程中的代码和运行效果:

      感觉好像,图片的路径是没有问题的,那么问题出在哪里呢?

四、加入路径查找程序进行判断

从上面这个截图可以看出,这个文件路径是确实存在的。

五、其他opencv的功能是可以用的

那么,是否MacOS app这种模式下opencv不可以用呢?加入了一个利用opencv画红框的程序进行调试,测试结果如下:

这个说明opencv的功能也是可以被调用的。那么既然opencv功能可以被调用,文件的路径又是真实存在的,那么问题到底出在什么地方呢?

六、找出的原因所在

最后,从网上寻找的答案分析下来,主要是MacOS app存在一个沙箱的问题。这个和网页的沙箱问题有类似的地方。就是沙箱内的程序访问本地文件是有限制的。于是,将需要显示的apple.jpg放入到了程序的资源当中,采用如下的方式进行访问:

如上图所示,将显示红色方框的代码屏蔽,然后将传统的从本地文件载入图片的方式,改为从资源文件中载入图片。运行结果如下:

Nice!

相关文章:

苹果系统MacOS下ObjectC建立的App程序访问opencv加载图片程序

前言 苹果系统下使用opencv感觉还是有些不太方便,总是感觉有点受到限制。本博客描述的是在MacOS下建立App程序然后调用opencv显示图片时出现的一些问题并最后解决的一个过程。 一、程序的建立 选择程序的类型: 选择界面模式和编程语言: 其余…...

《代码随想录》Day21打卡!

写在前面:祝大家新年快乐!!!2025年快乐,2024年拜拜~~~ 《代码随想录》二叉树:修剪二叉搜索树 本题的完整题目如下: 本题的完整思路如下: 1.本题使用递归进行求解,所以分…...

Dell服务器升级ubuntu 22.04失败解决

ubuntu系统原版本20.04,服务器dell T40. 执行apt update后,再执行apt upgrade。 apt update执行成功,但apt upgrade执行中断,提示如下: Checking package manager Reading package lists... Done Building dependen…...

构建全志 T113 Tina SDK

1、环境配置: 准备一个 Ubuntu 系统,可以是 WSL,虚拟机等,建议版本是 20.04。 1.1、安装必要的软件 进入系统后,输入下方命令安装需要的工具 : sudo apt update -y sudo apt full-upgrade -y sudo apt i…...

(推荐)【通用业务分发架构】1.业务分发 2.rpc调用 3.Event事件系统

一.Reflections和SpringUtil完成扫描包的(反射缓存) 二.id与class的映射泛型上下文(玩家是否登录,rpc调用SeqId,class类名)反射调用 1.netty层的 AccountMsgParam // 登录前 OnlineMsgParam // 登录后 SceneMsgParam // 发到场景层的 2.跨进程rpc调用的…...

最近的一些事情

正义不会缺席 这家公司违法辞退不给工资乱开离职证明。严重影响个人发展。 今天终于收到法院的判决书。 警醒自身发展与社会之间密切交流,敲响警钟。 虽然最终得到的法院的支持,但过程举步维艰。 这其中的过程,也让我对律师、法院和中国…...

CP AUTOSAR标准之FlexRayDriver(AUTOSAR_SWS_FlexRayDriver)(更新中……)

1 简介和功能概述 FlexRay驱动程序(Fr)抽象了特定FlexRay通信控制器(CC)的硬件相关实现细节。本规范主要依赖于符合FlexRay规范[13]的FlexRay CC。此外,本规范还支持符合FlexRay规范[14]的旧版FlexRay控制器。本SWS中因支持的FlexRay规范不同而导致的不同行为在适用的情况下以…...

Cesium 实战 27 - 三维视频融合(视频投影)

Cesium 实战 27 - 三维视频融合(视频投影) 核心代码完整代码在线示例在 Cesium 中有几种展示视频的方式,比如墙体使用视频材质,还有地面多边形使用视频材质,都可以实现视频功能。 但是随着摄像头和无人机的流行,需要视频和场景深度融合,简单的实现方式则不能满足需求。…...

GraphRAG实践:docker部署neo4j

概述 随着图数据库(Graph Database)的流行,越来越多的应用场景开始采用图数据库来处理复杂的关系数据。Neo4j作为领先的图数据库之一,提供了强大的图形查询语言Cypher、高效的存储结构和丰富的生态系统,使得它成为开发…...

常用的数据库类型都有哪些

在Java开发和信息系统架构中,数据库扮演着存储和管理数据的关键角色。数据库种类繁多,各有特色,适用于不同的应用场景。 1. 关系型数据库(RDBMS): • 关系型数据库是最为人熟知的数据库类型,数据…...

swiftui开发页面加载发送请求初始化@State变量

在SwiftUI中,你不能直接在init中更新State变量,因为State是由SwiftUI框架管理的,初始化时不允许直接修改。所以需要在onAppear发送请求然后修改State状态。 在SwiftUI中,如果希望在页面加载时立即发送网络请求,可以使…...

Ribbon和Eureka的集成

Ribbon和Eureka的集成是Spring Cloud Netflix生态系统的一部分,通常用于微服务架构中,以实现客户端负载均衡和服务发现。以下是更详细的集成步骤: 1. 引入依赖 在你的Spring Boot项目的pom.xml文件中添加Eureka客户端和Ribbon的依赖&#x…...

关于UE加载osgb数据的研究(一)

最近关于倾斜数据在UE中加载显示的问题,直接转换格式本地加载的方式避免了数据延迟加载、缓存加载,动态刷新等问题,但是也暴露了突出的问题:常规的模型格式会丢失掉倾斜数据的lod,致使效果缺失。 故而需要深入研究一下UE加载osgb数据的方式方法。 首先,我们需得学习一下…...

探索数据之美,Plotly引领可视化新风尚

在数据如潮的今天,如何精准捕捉信息的脉搏,让数据说话?Plotly,这款强大的数据可视化工具,正以其卓越的性能和丰富的功能,成为数据分析师、科学家及工程师们的得力助手。 Plotly不仅仅是一个绘图库&#xf…...

List排序的方法

List 排序方法: 1. list 的 sort() package com.example.a; import java.util.ArrayList; import java.util.Comparator; import java.util.List; class User{private Integer score;private Integer age;public User(Integer score, Integer age){super();this.…...

BurstAttention:高效的分布式注意力计算框架

BurstAttention:高效的分布式注意力计算框架 在现代大型语言模型(LLMs)的应用中,提升注意力机制的计算效率已成为研究的热点。当前,提升计算效率主要有两种方法:一种是优化单设备的计算和存储能力&#xf…...

大数据治理:构建稳健的数据生态系统

引言 随着信息技术的迅猛发展,企业每天都在生成海量的数据。这些数据不仅来自传统的业务交易系统,还包括社交媒体、物联网设备、移动应用程序等多个渠道。大数据治理旨在确保组织能够有效地管理其拥有的所有数据资产,以支持决策制定、优化业…...

【图书介绍】几本适合当教材的大数据技术图书

《Spark SQL大数据分析快速上手》 《Spark SQL大数据分析快速上手(大数据技术丛书)》(迟殿委,王泽慧,黄茵茵)【摘要 书评 试读】- 京东图书 《Spark SQL大数据分析快速上手》内容基于Spark新版本展开,符合企业目前开…...

阴阳师の新手如何速刷5个SP/SSR?!(急速育成)

目标:攒5个SP/SSR式神,参与急速育成,省四个黑蛋(想要快速升级技能而且经常上场的式神在攒够5个式神前先不升级)【理论上组成:10蓝40蓝预约召唤福利20修行or抽卡】 关键点:蓝票,新手…...

unity学习4:git和SVN的使用差别

目录 1 svn 1.1 操作逻辑 1.2 对应工具 1.3 SVN避免冲突的好习惯 2 git 2.1 git的基础操作逻辑 2.1.1 commit时,提交文件之外的其他文件需要pull 2.1.2 commit时,发现要提交的本地文件和服务器的文件冲突了 2.1.3 pull 时 2.2 对应工具 2.3 …...

rknn优化教程(二)

文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...

shell脚本--常见案例

1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

Caliper 配置文件解析:config.yaml

Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...

LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf

FTP 客服管理系统 实现kefu123登录&#xff0c;不允许匿名访问&#xff0c;kefu只能访问/data/kefu目录&#xff0c;不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...

【Go语言基础【12】】指针:声明、取地址、解引用

文章目录 零、概述&#xff1a;指针 vs. 引用&#xff08;类比其他语言&#xff09;一、指针基础概念二、指针声明与初始化三、指针操作符1. &&#xff1a;取地址&#xff08;拿到内存地址&#xff09;2. *&#xff1a;解引用&#xff08;拿到值&#xff09; 四、空指针&am…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展&#xff0c;社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统&#xff0c;主要的模块包括管理员&#xff1b;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

从 GreenPlum 到镜舟数据库:杭银消费金融湖仓一体转型实践

作者&#xff1a;吴岐诗&#xff0c;杭银消费金融大数据应用开发工程师 本文整理自杭银消费金融大数据应用开发工程师在StarRocks Summit Asia 2024的分享 引言&#xff1a;融合数据湖与数仓的创新之路 在数字金融时代&#xff0c;数据已成为金融机构的核心竞争力。杭银消费金…...