Nef文件修复方法、装置、设备及存储介质与流程

文档序号:37264263发布日期:2024-03-12 20:46阅读:20来源:国知局
Nef文件修复方法、装置、设备及存储介质与流程

本发明涉及计算机领域,尤其涉及一种nef文件修复方法、装置、设备及存储介质。


背景技术:

1、nef文件是一种尼康数码相机raw图像文件,目前该格式文件主要应用于网络、数字媒体等领域,主要作为网站图形元素、日常生活纪念等应用方式在计算机存储介质内保存。但在日常生活工作中常常因为存储介质损坏,病毒破坏使文件遭受不可逆的损坏,使nef格式文件完全无法打开,或打开后图片呈现像素块杂乱无序,无法构成正常图像,

2、当前修复损坏nef文件仅靠提取其中残留的jpg缩略图,无法恢复完整的nef文件,现有的技术方案中,并没有直接修复nef格式的修复方案,使得nef文件修复准确率低。


技术实现思路

1、本发明的主要目的在于解决nef文件修复准确率低的技术问题。

2、本发明第一方面提供了一种nef文件修复方法,所述nef文件修复方法包括:

3、获取正常nef文件及损坏nef文件,根据所述正常nef文件的文件头位置,得到图像文件目录的偏移位置;

4、根据所述图像文件目录的偏移位置及预设读取规则,得到所述图像文件目录对应的所有子图像文件目录,并根据所述所有子图像文件目录,得到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置;

5、搜索所述损坏nef文件,得到所述损坏nef文件中rgb数据偏移位置,提取所述rgb数据偏移位置的rgb数据,并将所述rgb数据通过opencv库保存为jpg数据;

6、搜索所述损坏nef文件,得到所述损坏nef文件中raw数据起始偏移位置,并根据所述raw数据起始偏移位置,得到所述损坏nef文件的raw数据;

7、将所述jpg数据、以及所述raw数据分别填充到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置中,得到修复后的nef文件。

8、可选的,在本发明第一方面的第一种实现方式中,所述根据所述图像文件目录的偏移位置及预设读取规则,得到所述图像文件目录对应的所有子图像文件目录,并根据所述所有子图像文件目录,得到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置包括:

9、根据所述图像文件目录的偏移位置及预设读取规则,搜索预设第一目录项类型的偏移位置;

10、根据所述预设第一目录项类型的偏移位置,得到所述图像文件目录对应的所有子图像文件目录;

11、根据所述所有子图像文件目录,得到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置。

12、可选的,在本发明第一方面的第二种实现方式中,所述根据所述预设第一目录项类型的偏移位置,得到所述图像文件目录对应的所有子图像文件目录包括:

13、根据所述预设第一目录项类型的偏移位置,得到目录项数量;

14、根据所述目录项数量,得到子图像文件目录数量;

15、获取首个子图像文件目录的偏移位置,根据所述首个子图像文件目录的偏移位置、以及所述子图像文件目录数量,得到所有子图像文件目录。

16、可选的,在本发明第一方面的第三种实现方式中,所述根据所述所有子图像文件目录,得到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置包括:

17、根据所述所有子图像文件目录,得到首个子图像文件目录;

18、根据所述首个子图像文件目录,通过所述预设读取规则,得到所述正常nef文件中jpg数据偏移位置;

19、获取下一个子图像文件目录,根据所述下一个子图像文件目录,通过所述预设读取规则,得到所述正常nef文件中raw数据偏移位置。

20、可选的,在本发明第一方面的第四种实现方式中,所述搜索所述损坏nef文件,得到所述损坏nef文件中raw数据起始偏移位置,并根据所述raw数据起始偏移位置,得到所述损坏nef文件的raw数据包括:

21、搜索所述损坏nef文件,根据所述rgb数据偏移位置,搜索预设第二目录项类型的偏移位置;

22、根据所述预设第二目录项类型的偏移位置,得到预设字节位置的字节数据;

23、若所述预设字节位置的字节数据等于预设阈值,则获取所述损坏nef文件中raw数据起始偏移位置,并根据所述raw数据起始偏移位置,得到所述损坏nef文件的raw数据。

24、可选的,在本发明第一方面的第五种实现方式中,所述搜索所述损坏nef文件之前,还包括:

25、获取所述正常nef文件的字节序;

26、根据所述字节序,设置所述损坏nef文件的读取方式。

27、可选的,在本发明第一方面的第六种实现方式中,所述将所述jpg数据、以及所述raw数据分别填充到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置中,得到修复后的nef文件包括:

28、根据所述所有子图像文件目录,得到所述正常nef文件中rgb数据偏移位置;

29、将所述rgb数据、所述jpg数据、以及所述raw数据分别填充到所述正常nef文件中rgb数据偏移位置、jpg数据偏移位置及raw数据偏移位置中,得到修复后的nef文件。

30、本发明第二方面提供了一种nef文件修复设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述nef文件修复设备执行上述的nef文件修复方法。

31、本发明的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的nef文件修复方法。

32、在本发明实施例中,获取正常nef文件及损坏nef文件,根据所述正常nef文件的文件头位置,得到图像文件目录的偏移位置;根据所述图像文件目录的偏移位置及预设读取规则,得到所述图像文件目录对应的所有子图像文件目录,并根据所述所有子图像文件目录,得到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置;搜索所述损坏nef文件,得到所述损坏nef文件中rgb数据偏移位置,提取所述rgb数据偏移位置的rgb数据,并将所述rgb数据通过opencv库保存为jpg数据;搜索所述损坏nef文件,得到所述损坏nef文件中raw数据起始偏移位置,并根据所述raw数据起始偏移位置,得到所述损坏nef文件的raw数据;将所述jpg数据、以及所述raw数据分别填充到所述正常nef文件中jpg数据偏移位置及raw数据偏移位置中,得到修复后的nef文件。在本发明中,通过读取正常nef文件的图像文件目录的偏移位置以及子图像文件目录,得到正常nef文件中jpg数据偏移位置及raw数据偏移位置,搜索损坏nef文件,得到损坏nef文件的raw数据和rgb数据,并将rgb数据通过opencv库保存为jpg数据,将jpg数据、以及raw数据分别填充到正常nef文件中jpg数据偏移位置及raw数据偏移位置中,能实现损坏nef文件的直接修复,从而恢复完整的nef文件,提高nef文件修复的准确率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1