openCV与freetype解决图片叠OSD的问题

2023-11-12

一、移植OPENCV3.4.1库:opencv-3.4.1.tar.gz

功能:实现对图片的处理
移植文档见:正点原子:I.MX6U 移植 OpenCV V1.3(注意版本)

注意:安装交叉编译工具 注意,这里不能使用 NXP yocto 所使用的交叉编译器 arm-poky-linux-gnueab,具体原因未知。 本次使用的是《【正点原子】I.MX6U 嵌入式 Linux 驱动开发指南 V1.x》的第 4.3 小节第三方 编译器 arm-linux-gnueabihf。 由于作者的 Ubuntu 是 64 位的,所以选择的是 64 位的编译工具链。请参照《【正点原子】I.MX6U 嵌入式 Linux 驱动开发指南 V1.x》的第 4.3 小节配置好交叉编译工具链

二、移植freetype库:freetype-2.10.2.tar.xz

功能:调用字库,用各种字体绘制汉字

移植过程见链接:移植Freetype字体库
(换浏览器打开)

注意:​先解压freetype-2.10.2.tar.xz压缩包,解压完成后用解压出来的Makefile进行编译,这里我是用的新的编译链(包含zlib,如果不包含的话需要用下面的命令来编译安装zlib),编译出错是正常的,是因为freetype是依赖于libpng的,而libpng依赖于zlib

三、通过OpenCV的C++接口实现中文的输出

见网址,
OpenCV支持中文字符输出实现 - CodeAntenna
https://codeantenna.com/a/SXGzduMqSQ(换浏览器打开)
主要是CvxText.hpp和CvxText.cpp,2个文件中的putWChar函数实现了字体的位图绘制,中文变成图片,然后去叠到图片上去。

四、调用接口
在这里插入图片描述

必须注意一下这个L,一定要加上。
wchar_t是C/C++的字符类型,是一种扩展的存储方式。wchar_t类型主要用在国际化程序的实现中,但它不等同于unicode编码。unicode编码的字符一般以wchar_t类型存储。

五、效果
在这里插入图片描述

(欢迎私信交流)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

openCV与freetype解决图片叠OSD的问题 的相关文章

  • 如何将非静态类成员“std::bind”绑定到 Win32 回调函数“WNDPROC”?

    我正在尝试将非静态类成员绑定到标准WNDPROC http msdn microsoft com en us library ms633573 aspx功能 我知道我可以通过将类成员设为静态来简单地做到这一点 但是 作为一名 C 11 ST
  • 确保 StreamReader 不会挂起等待数据

    下面的代码读取从 tcp 客户端流读取的所有内容 并且在下一次迭代中它将仅位于 Read 上 我假设正在等待数据 我如何确保它不会在没有任何内容可供读取时返回 我是否必须设置低超时 并在失败时响应异常 或者有更好的办法吗 TcpClient
  • 复制 std::function 的成本有多高?

    While std function是可移动的 但在某些情况下不可能或不方便 复制它会受到重大处罚吗 它是否可能取决于捕获变量的大小 如果它是使用 lambda 表达式创建的 它依赖于实现吗 std function通常被实现为值语义 小缓
  • 如何创建包含 IPv4 地址的文本框? [复制]

    这个问题在这里已经有答案了 如何制作一个这样的文本框 我想所有的用户都见过这个并且知道它的功能 您可以使用带有 Mask 的 MaskedTestBox000 000 000 000 欲了解更多信息 请参阅文档 http msdn micr
  • 在 C 中初始化变量

    我知道有时如果你不初始化int 如果打印整数 您将得到一个随机数 但将所有内容初始化为零似乎有点愚蠢 我问这个问题是因为我正在评论我的 C 项目 而且我对缩进非常直接 并且它可以完全编译 90 90 谢谢 Stackoverflow 但我想
  • 在 Visual Studio 2010 中从 Fortran 调用 C++ 函数

    我想从 Fortran 调用 C 函数 为此 我在 Visual Studio 2010 中创建了一个 FORTRAN 项目 之后 我将一个 Cpp 项目添加到该 FORTRAN 项目中 当我要构建程序时出现以下错误 Error 1 unr
  • 为什么调用非 const 成员函数而不是 const 成员函数?

    为了我的目的 我尝试包装一些类似于 Qt 共享数据指针的东西 经过测试 我发现当应该调用 const 函数时 会选择它的非 const 版本 我正在使用 C 0x 选项进行编译 这是一个最小的代码 struct Data int x con
  • x86-64 AMD 上 CALL 指令的操作数生成

    以下是示例程序 objdump 的输出 080483b4
  • 如何检测表单的任何控件的变化?

    如何检测 C 中表单的任何控件的更改 由于我在一个表单上有许多控件 并且如果表单中的任何控件值发生更改 我需要禁用按钮 我正在寻找一些内置函数 事件处理程序 属性 并且不想为此创建自定义函数 不 我不知道任何时候都会触发任何事件any控制表
  • 如何在 32 位或 64 位配置中以编程方式运行任何 CPU .NET 可执行文件?

    我有一个可在 32 位和 64 位处理器上运行的 C 应用程序 我试图枚举给定系统上所有进程的模块 当尝试从 64 位应用程序枚举 32 位进程模块时 这会出现问题 Windows 或 NET 禁止它 我认为如果我可以从应用程序内部重新启动
  • 使用自定义堆的类似 malloc 的函数

    如果我希望使用自定义预分配堆构造类似 malloc 的功能 那么 C 中最好的方法是什么 我的具体问题是 我有一个可映射 类似内存 的设备 已将其放入我的地址空间中 但我需要获得一种更灵活的方式来使用该内存来存储将随着时间的推移分配和释放的
  • C# 中的合并运算符?

    我想我记得看到过类似的东西 三元运算符 http msdn microsoft com en us library ty67wk28 28VS 80 29 aspx在 C 中 它只有两部分 如果变量值不为空 则返回变量值 如果为空 则返回默
  • 等待进程释放文件

    我如何等待文件空闲以便ss Save 可以用新的覆盖它吗 如果我紧密地运行两次 左右 我会得到一个generic GDI error
  • 使用管道时,如果子进程数量大于处理器数量,进程是否会被阻塞?

    当子进程数量很大时 我的程序停止运行 我不知道问题是什么 但我猜子进程在运行时以某种方式被阻止 下面是该程序的主要工作流程 void function int process num int i initial variables for
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • 为什么 gcc 抱怨“错误:模板参数 '0' 的类型 'intT' 取决于模板参数”?

    我的编译器是gcc 4 9 0 以下代码无法编译 template
  • 使用 C# 读取 Soap 消息

  • C++ 函数重载类似转换

    我收到一个错误 指出两个重载具有相似的转换 我尝试了太多的事情 但没有任何帮助 这是那段代码 CString GetInput int numberOfInput BOOL clearBuffer FALSE UINT timeout IN
  • WebSocket安全连接自签名证书

    目标是一个与用户电脑上安装的 C 应用程序交换信息的 Web 应用程序 客户端应用程序是 websocket 服务器 浏览器是 websocket 客户端 最后 用户浏览器中的 websocket 客户端通过 Angular 持久创建 并且
  • 如何从 ODBC 连接获取可用表的列表?

    在 Excel 中 我可以转到 数据 gt 导入外部数据 gt 导入数据 然后选择要使用的数据源 然后在提供登录信息后 它会给我一个表格列表 我想知道如何使用 C 以编程方式获取该列表 您正在查询什么类型的数据源 SQL 服务器 使用权 看

随机推荐

  • red5聊天功能--私聊的实现

    这里我是在服务器端进行转发 遍历当前所有连接 找到目标对象 然后调用客户端函数 不知道还有没有更好的方法 如果人数多 服务器要承受较的的压力 public boolean sendPrivateMsg String target Strin
  • Centos/linux根目录扩容、分区、挂载。LVM、物理卷、逻辑卷

    一 LVM结构 二 数据盘划分 磁盘情况 需要将vda vdb剩余资源划分给 data下 开始划分 创建磁盘分区 注意 并不要求分区的大小一致 同样 分区需要使用 8e 类型来使他们可用于LVM fdisk dev vda n gt p g
  • Unity调用摄像头获取拍摄画面

    using System Collections using UnityEngine public class Test MonoBehaviour public WebCamTexture cameraTexture public str
  • 酷应用背后,低代码正在被重估

    就当下的中国TO B企业而言 尤其是中大企业而言 复杂的场景和需求是阻碍数字化的最根本原因 而低代码恰可以以一种最原子化和最细颗粒度的数字模型来解决这个问题 帮助企业构建一个完整的 连贯的前端数字化应用 作者 皮爷 出品 产业家 生产计划
  • 华为机试题80-整型数组合并

    描述 题目标题 将两个整型数组按照升序合并 并且过滤掉重复数组元素 输出时相邻两数之间没有空格 输入描述 输入说明 按下列顺序输入 1 输入第一个数组的个数 2 输入第一个数组的数值 3 输入第二个数组的个数 4 输入第二个数组的数值 输出
  • 静态储存,堆,栈的理解

    数据结构中的堆与栈 栈 可以理解为为一个瓶子 他遵循着先进后出的原则 堆 是一种经过排序的树状结构 每一个节点都有一个值 我们通常说的堆是二叉堆 堆的特点是跟节点最大或者最小 且子节点也是一个堆 所以我们在使用的堆的时候 都是随便取一个节点
  • java ssh连接远程服务器_Ubuntu开启远程连接-开启ssh服务

    ssh分为openssh client与openssh server 如果要连接某个远程就需要装openssh client 反之如果要被其他远程连接本机就需要安装openssh server 我们安装完ubuntu之后会发现无法通过外部使
  • 【软路由】旁路由使用配置教程

    软路由 旁路由使用配置教程 简介 旁路由好处 旁路由配置步骤 1 修改管理地址网段 2 关闭IPV6和DHCP服务 3 防火墙设置 关于IP动态伪装 4 终端设置 简介 我们都知道 软路由一般有两种使用方式 一种是作为承担DHCP分配的主路
  • 【JavaScript高级程序设计】重点-第五章笔记:Date、RegExp、原始值包装类、单例内置对象

    文章目录 基本引用类型 1 Date 1 1 继承的方法 1 2 日期格式化方法 1 3 日期 时间组件方法 2 RegExp正则表达式 2 1 RegExp 实例属性 2 2 RegExp 实例方法 2 3 RegExp 构造函数属性 3
  • 【Dev-C++】的dos控制台窗口大小设置

    可以使用system 接口直接修改 例 include
  • Spring 集成OpenOffice

    第一步 openoffice jar包依赖
  • 安卓scale动画fromDegrees toDegrees解释

    注意以下实验都是相对于自己 0 0f 上 1 0f 下 如果想了解安卓scale动画pivotX 请点击这里 在安卓中 fromDegrees是开始的角度 toDegrees是介绍的角度 其中X轴右面是0度 如果toDegrees比from
  • 【JS组件篇】使用拖拽组件 react-beautiful-dnd 实现工作台自定义布局功能

    项目要求 制作工作台页面 模块可根据后端配置动态展示 各模块可根据个人喜好进行拖拽布局 并保存 大致效果如下 大致实现步骤 整体布局 首先需要对设计稿进行分析 大致分为左右两部分 可根据后端配置动态展示左右两模块的展示内容 各模块相对独立
  • C++内存管理(2)new、delete详解

    目录 new operator new操作 new类对象时加不加括号的差别 new工作任务 delete工作任务 new和delete 堆区空间操作 对比malloc和free new和delete操作基本类型的空间 new和delete操
  • Direct3D纹理映射

    借助纹理映射技术 我们可将图像数据映射到三角形单元中 这种功能可以显著地增加所绘制场景的细节和真实感 例如创建一个立方体然后为其每个面映射一个板条纹理 从而将该立方体变为一个板条箱 在Direct3D中纹理用接口IDirect3DTextu
  • python判断工作日,节假日

    python判断工作日 节假日 模块 chinesecalendar 爬虫式的方法 模块 pandas 实例 模块 chinesecalendar 针对中国的节假日 强烈推荐 https pypi org project chineseca
  • 王道考研计算机网络第二章--物理层

    目录 2 1通信基础 2 1 1物理层基本概念 1物理层基本概念 2 1 2数据通信基础知识 1典型的数据通信模型 2数据通信相关术语 3三种通信方式 4两种数据传输方式 2 1 3码元 波特 速率 带宽 1码元 2速率 波特 带宽 2 1
  • 被入侵了怎么办?暴力破解被篡改了数据,该怎么处理?主机安全不容忽视

    主机安全关系着整个服务器数据的一个安全性 那么主机安全具体指什么呢 指保证主机在数据存储和处理的保密性 完整性 可用性 它包括硬件 固件 系统软件的自身安全 以及一系列附加的安全技术和安全管理措施 从而建立一个完整的主机安全保护环境 我们进
  • Kubernetes: K8S 容器集群管理系统

    虚拟机 gt 容器技术 传统部署 直接将应用程序部署在物理机上 虚拟机 vmware openstack 可以在操作系统中模拟出多台子电脑 Linux 子电脑之间是相互隔离的 独立 但是虚拟机存在启动慢 占用空间大 不易迁移的缺点 容器化技
  • openCV与freetype解决图片叠OSD的问题

    一 移植OPENCV3 4 1库 opencv 3 4 1 tar gz 功能 实现对图片的处理 移植文档见 正点原子 I MX6U 移植 OpenCV V1 3 注意版本 注意 安装交叉编译工具 注意 这里不能使用 NXP yocto 所