CN109831595A - 一种图片编码的方法和设备 - Google Patents
一种图片编码的方法和设备 Download PDFInfo
- Publication number
- CN109831595A CN109831595A CN201811540703.8A CN201811540703A CN109831595A CN 109831595 A CN109831595 A CN 109831595A CN 201811540703 A CN201811540703 A CN 201811540703A CN 109831595 A CN109831595 A CN 109831595A
- Authority
- CN
- China
- Prior art keywords
- matrix
- picture
- data block
- transmitted
- quaternary number
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明实施例提出了一种图片编码的方法和设备,其中该方法包括:获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;将所述插入数据写入所述预设图片,生成待传输图片进行传输。实现将图片信息与RT矩阵相关联,以确保图片和与之对应的RT矩阵的一致性,避免了数据部分丢失问题。
Description
技术领域
本发明涉及图片传输领域,特别涉及一种图片编码的方法和设备。
背景技术
在AR应用中,数据需要在客户端和服务器端之间不断传输,其中最重要的数据是图片和拍摄当前图片的拍摄相机的姿态数据,在传输的过程中,这两者有其一丢失,那么这一帧图片的数据都作废,前端接收不到任何有效信息,就不能做出正常的反应,从而导致应用的效果也会受到影响。因此,如何提高数据传输过程中的一致性,是应用效果得到保障的重要前提。
由此,目前需要一种方案可以避免该缺陷。
发明内容
针对现有技术中的缺陷,本发明提出了一种图片编码的方法和设备,实现将图片信息与RT矩阵相关联,以确保图片和与之对应的RT矩阵的一致性,避免了数据部分丢失问题。
具体的,本发明提出了以下实施例:
本发明实施例提出了一种图片编码的方法,包括:
获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
将所述插入数据写入所述预设图片,生成待传输图片进行传输。
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0≠0,1+r11+r22+r33>0;q={q0,q1,q2,q3};
其中,
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则max{r11,r22,r33}=r11时;q={q0,q1,q2,q3};
其中,
所述1为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r22时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r33时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述“将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据”,通过以下公式来完成:
S={q0,q1,q2,q3,t1,t2,t3};
其中,S为插入数据;所述RT矩阵为
在一个具体的实施例中,所述预设图片中包括多个按序排列的预设数据块;
所述“将所述插入数据写入所述预设图片,生成待传输图片进行传输”,包括:
依次按序读取所述预设图片中的各预设数据块;
创建数据为空的空图片,将所读取的数据块依次写入到所述空图片中,并当检测到下一个待写入数据块为指定的标识数据块,将写入有所述插入数据的数据块写入所述空图片,并继续进行所述标识数据块的写入操作,直到最终完成所有预设数据块的写入,生成待传输图片;
传输所述待传输图片。
在一个具体的实施例中,所述预设图片为PNG格式的图片,所述标识数据块为IEND数据块,所述写入有所述插入数据的数据块为tEXt数据块。
在一个具体的实施例中,该方法还包括:
当接收端接收到所述待传输图片时,获取所述待传输图片中位于IEND数据块前一个的tEXt数据块;
对所获取的tEXt数据块进行解析,以获取到所述插入数据。
本发明实施例还提出了一种图片传输的设备,包括:
获取模块,用于获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
转换模块,用于将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
传输模块,用于将所述插入数据写入所述预设图片,生成待传输图片进行传输。
以此,本发明实施例提出了一种图片编码的方法和设备,其中该方法包括:获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;将所述插入数据写入所述预设图片,生成待传输图片进行传输。实现将图片信息与RT矩阵相关联,以确保图片和与之对应的RT矩阵的一致性,避免了数据部分丢失问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明实施例提出的一种图片编码的方法的流程示意图;
图2为本发明实施例提出的一种图片编码的方法中所涉及到的PNG文件的格式结构示意图;
图3为本发明实施例提出的一种图片编码的设备的结构示意图。
具体实施方式
在下文中,将更全面地描述本公开的各种实施例。本公开可具有各种实施例,并且可在其中做出调整和改变。然而,应理解:不存在将本公开的各种实施例限于在此公开的特定实施例的意图,而是应将本公开理解为涵盖落入本公开的各种实施例的精神和范围内的所有调整、等同物和/或可选方案。
在本公开的各种实施例中使用的术语仅用于描述特定实施例的目的并且并非意在限制本公开的各种实施例。如在此所使用,单数形式意在也包括复数形式,除非上下文清楚地另有指示。除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本公开的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本公开的各种实施例中被清楚地限定。
实施例1
本发明实施例1公开了一种图片编码的方法,如图1所示,包括以下步骤:
步骤101、获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
具体的,预设图像可以为拍摄视频得到的视频帧中的图片,具体的可以从摄像装置获取到所拍摄的预设图像,并获取到摄像装置拍摄该预设图片的RT矩阵,也可以是前端设备将视频帧传输给服务器端后,服务器端计算当前视频帧的姿态信息RT矩阵。
步骤102、将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
在获取到RT矩阵之后,会进行转换,具体的,所述RT矩阵为其中,rij表示旋转,t表示位移。旋转矩阵为
通过四元数来表示旋转矩阵,四元数有以下优点:四元数不会有欧拉角存在的万向锁(gimbal lock)问题;四元数由4个数组成、旋转矩阵需要9个数;两个四元数之间更容易插值;旋转矩阵在多次运算后会积攒误差,需要分别对其做规范化和正交化,对四元数规范化更容易。
具体转换为四元数q={q0,q1,q2,q3}。
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0≠0,1+r11+r22+r33>0;q={q0,q1,q2,q3};
其中,
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则max{r11,r22,r33}=r11时;q={q0,q1,q2,q3};
其中,
所述1为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r22时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r33时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
在一个具体的实施例中,所述“将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据”,通过以下公式来完成:
S={q0,q1,q2,q3,t1,t2,t3};
其中,S为插入数据;所述RT矩阵为
步骤103、将所述插入数据写入所述预设图片,生成待传输图片进行传输。
在一个具体的实施例中,所述预设图片中包括多个按序排列的预设数据块;
所述步骤103中的“将所述插入数据写入所述预设图片,生成待传输图片进行传输”,包括:
依次按序读取所述预设图片中的各预设数据块;
创建数据为空的空图片,将所读取的数据块依次写入到所述空图片中,并当检测到下一个待写入数据块为指定的标识数据块,将写入有所述插入数据的数据块写入所述空图片,并继续进行所述标识数据块的写入操作,直到最终完成所有预设数据块的写入,生成待传输图片;
传输所述待传输图片。
在一个具体的实施例中,所述预设图片为PNG格式的图片,所述标识数据块为IEND数据块,所述写入有所述插入数据的数据块为tEXt数据块。
具体的,PNG格式的文件(包括图片)的格式如图2所示,除了开始的8个字节是固定的,后面的格式都是一个一个的数据块结构(也即chunk),如图2所示。每个chunk的结构是固定的:4个字节的数据长度,4个字节的chunk类型,不定长度的数据内容,4个字节的CRC校验码。类型为tEXt的数据块是文本信息数据块,可以有多个tEXt数据块。本发明的方案中为PNG图片增加一个tEXt的chunk,将这个数据块写入到结束标识IEND的chunk之前。这样既不影响图片的显示,也顺利将插入数据写入到PNG图片中。
以此写入步骤:对于原始图片,先获取图片的前8个字节数据,然后依次读取数据块;对于每个数据块先读取chunk的前四个字节,得到数据的长度,再读取4个字节,得到数据chunk的类型;创建一张空的PNG图片,将读取的数据依次写入到空的图片中,直到数据块的类型为IEND;当数据块的类型为IEND时,写入添加的tEXt数据块,依次写入数据长度,数据块类型,数据内容以及CRC校验码;最后写入IEND数据块。
在一个具体的实施例中,还包括:
当接收端接收到所述待传输图片时,获取所述待传输图片中位于IEND数据块前一个的tEXt数据块;
对所获取的tEXt数据块进行解析,以获取到所述插入数据。
具体的,后续,将编码好的PNG图片传输给前端并解析图片数据获得姿态信息。
前端读取图片数据,取IEND数据块的前面一个tEXt数据块内容进行解析,得到姿态信息S={q0,q1,q2,q3,t1,t2,t3}。
实施例2
本发明实施例2还公开了一种图片编码的设备,如图3所示,包括:
获取模块201,用于获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
转换模块202,用于将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
传输模块203,用于将所述插入数据写入所述预设图片,生成待传输图片进行传输。
具体的,本发明实施例还公开有其他相关特征,具体的特征请参见实施例1中的描述,在此不再进行赘述。
本发明实施例提出了一种图片编码的方法和设备,其中该方法包括:获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;将所述插入数据写入所述预设图片,生成待传输图片进行传输。实现将图片信息与RT矩阵相关联,以确保图片和与之对应的RT矩阵的一致性,避免了数据部分丢失问题。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (10)
1.一种图片编码的方法,其特征在于,包括:
获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
将所述插入数据写入所述预设图片,生成待传输图片进行传输。
2.如权利要求1所述的一种图片编码的方法,其特征在于,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0≠0,1+r11+r22+r33>0;q={q0,q1,q2,q3};
其中,
所述q为四元数;所述旋转矩阵为
3.如权利要求1所述的一种图片编码的方法,其特征在于,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则max{r11,r22,r33}=r11时;q={q0,q1,q2,q3};
其中,
所述1为四元数;所述旋转矩阵为
4.如权利要求1所述的一种图片编码的方法,其特征在于,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r22时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
5.如权利要求1所述的一种图片编码的方法,其特征在于,所述将所述旋转矩阵转换为四元数,通过以下公式来完成:
当q0趋近于0,则当max{r11,r22,r33}=r33时,q={q0,q1,q2,q3};
所述q为四元数;所述旋转矩阵为
6.如权利要求2-5中任意一项所述的一种图片编码的方法,其特征在于,所述“将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据”,通过以下公式来完成:
S={q0,q1,q2,q3,t1,t2,t3};
其中,S为插入数据;所述RT矩阵为
7.如权利要求1所述的一种图片编码的方法,其特征在于,所述预设图片中包括多个按序排列的预设数据块;
所述“将所述插入数据写入所述预设图片,生成待传输图片进行传输”,包括:
依次按序读取所述预设图片中的各预设数据块;
创建数据为空的空图片,将所读取的数据块依次写入到所述空图片中,并当检测到下一个待写入数据块为指定的标识数据块,将写入有所述插入数据的数据块写入所述空图片,并继续进行所述标识数据块的写入操作,直到最终完成所有预设数据块的写入,生成待传输图片;
传输所述待传输图片。
8.如权利要求7所述的一种图片编码的方法,其特征在于,所述预设图片为PNG格式的图片,所述标识数据块为IEND数据块,所述写入有所述插入数据的数据块为tEXt数据块。
9.如权利要求8所述的一种图片编码的方法,其特征在于,还包括:
当接收端接收到所述待传输图片时,获取所述待传输图片中位于IEND数据块前一个的tEXt数据块;
对所获取的tEXt数据块进行解析,以获取到所述插入数据。
10.一种图片传输的设备,其特征在于,包括:
获取模块,用于获取预设图片以及拍摄所述预设图片的摄像装置的RT矩阵;其中,所述RT矩阵包括旋转矩阵与位移矩阵;
转换模块,用于将所述旋转矩阵转换为四元数后拼接所述位移矩阵生成与所述RT矩阵对应的插入数据;
传输模块,用于将所述插入数据写入所述预设图片,生成待传输图片进行传输。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811540703.8A CN109831595A (zh) | 2018-12-17 | 2018-12-17 | 一种图片编码的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811540703.8A CN109831595A (zh) | 2018-12-17 | 2018-12-17 | 一种图片编码的方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109831595A true CN109831595A (zh) | 2019-05-31 |
Family
ID=66858894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811540703.8A Pending CN109831595A (zh) | 2018-12-17 | 2018-12-17 | 一种图片编码的方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109831595A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1534590A (zh) * | 2003-03-27 | 2004-10-06 | ����ŷ�������ʽ���� | 显示处理装置、显示控制方法及显示处理程序 |
CN104359464A (zh) * | 2014-11-02 | 2015-02-18 | 天津理工大学 | 基于立体视觉的移动机器人定位方法 |
CN105222789A (zh) * | 2015-10-23 | 2016-01-06 | 哈尔滨工业大学 | 一种基于激光测距传感器的楼宇室内平面图建立方法 |
CN106488143A (zh) * | 2015-08-26 | 2017-03-08 | 刘进 | 一种生成视频数据、标记视频中物体的方法、系统及拍摄装置 |
CN107067437A (zh) * | 2016-12-28 | 2017-08-18 | 中国航天电子技术研究院 | 一种基于多视几何和光束法平差的无人机定位系统及方法 |
-
2018
- 2018-12-17 CN CN201811540703.8A patent/CN109831595A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1534590A (zh) * | 2003-03-27 | 2004-10-06 | ����ŷ�������ʽ���� | 显示处理装置、显示控制方法及显示处理程序 |
CN104359464A (zh) * | 2014-11-02 | 2015-02-18 | 天津理工大学 | 基于立体视觉的移动机器人定位方法 |
CN106488143A (zh) * | 2015-08-26 | 2017-03-08 | 刘进 | 一种生成视频数据、标记视频中物体的方法、系统及拍摄装置 |
CN105222789A (zh) * | 2015-10-23 | 2016-01-06 | 哈尔滨工业大学 | 一种基于激光测距传感器的楼宇室内平面图建立方法 |
CN107067437A (zh) * | 2016-12-28 | 2017-08-18 | 中国航天电子技术研究院 | 一种基于多视几何和光束法平差的无人机定位系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7974468B2 (en) | Image processing apparatus and image processing method | |
CN105611213A (zh) | 一种图像处理方法、播放方法及相关的装置和系统 | |
US20150066923A1 (en) | Reference card for scene referred metadata capture | |
CN111008985A (zh) | 全景图拼缝检测方法、装置、可读存储介质及电子设备 | |
CN106941428A (zh) | 一种基于电子水印的图像延迟测试方法 | |
US20220232173A1 (en) | Method and device of image processing, imaging system and storage medium | |
WO2023010751A1 (zh) | 图像高亮区域的信息补偿方法、装置、设备及存储介质 | |
CN116030757A (zh) | Led显示屏校色方法、装置、计算机设备及存储介质 | |
CN103795499B (zh) | 一种卫星载荷高速串口检错纠错方法 | |
CN117597918A (zh) | 信号传输方法、信号发送端、信号接收端及激光投影设备 | |
CN109831595A (zh) | 一种图片编码的方法和设备 | |
WO2021174834A1 (zh) | Yuv图像识别方法、系统和计算机设备 | |
CN113923354A (zh) | 基于多帧图像的视频处理方法、设备及虚拟背景拍摄系统 | |
CN103685854A (zh) | 图像处理装置、图像处理方法和程序 | |
WO2022062148A1 (zh) | 一种以二维码设定led显示屏连线的方法、装置和系统 | |
CN112887589A (zh) | 一种基于无人机全景拍摄方法和装置 | |
US9066111B2 (en) | Image encoder and method for encoding images | |
US6369848B1 (en) | Picture data transmission device and picture signal coding method thereof | |
CN113573098B (zh) | 一种图像传输方法、装置及电子设备 | |
CN115866254A (zh) | 一种传输视频帧及摄像参数信息的方法与设备 | |
CN115272667A (zh) | 农田图像分割模型训练方法、装置、电子设备和介质 | |
CN110381308B (zh) | 一种测试直播视频处理效果的系统 | |
CN112995761A (zh) | 一种目标检测结果与图像原始数据混合传输方法 | |
JP5927515B2 (ja) | 画像編集方法、画像編集システム、及び画像編集プログラム | |
CN112399096B (zh) | 一种视频处理方法、设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190531 |
|
RJ01 | Rejection of invention patent application after publication |