C_and_CPP 板


LINE

开发平台(Platform): (Ex: Win10, Linux, ...) Win7 编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出) VS2008 额外使用到的函数库(Library Used): (Ex: OpenGL, ...) OpenCV 问题(Question): 从png档读到的pixel无法和原始的影像矩阵完全相同 喂入的资料(Input): png图档 预期的正确结果(Expected Output): 原始影像(.raw file) 程式码(Code): http://ideone.com/PLOrLa https://drive.google.com/drive/folders/0B99YOOHxEH3wMHdnRDZyYkxlZlk?usp=sharing google云端,里面有我要处理的png档和原始影像矩阵的raw file rawfile 大小为2624*1960 16unsighed bit 补充说明(Supplement): 各位版上的大大好: 小鲁我最近在研究怎麽把png档里的每个像素读取出来 然後再把像素的值存回RAW档案 我的对PNG的格式的理解是:非破坏性的压缩 因此png上的像素值便是原始的像素值 可以透过读取png影像的每一个pixel,去完整还原原始的raw file DK66.png =>这是我喂入程式图档 source_image_array.raw =>这是在拍下png档时的原始影像资料 66DK.raw =>透过程式产生的影像资料 我的预想是source_image_array.raw要和66DK.raw完全吻合 但是我去观看source[]矩阵内的资料,却和source_image_arrat.raw的资料不吻合 以前五个pixel点为例 source_image_array前五点为:016F、0176、016D、016A、0165 但是我透过openCV的cvGet1D抓到的值却是0131、0134、0136、012A、012E 是因为png工作中的filtering和压缩後,每一点的像素已经和原始资料不同了吗? source_image_array.raw这里面的值是用人工产生的 然後我把source_image_array.raw放进别人写好的函式转成PNG档 我的目的是要将PNG档还原回我当初制造的source_image_array.raw 用OpenCV中的cvGet1D把PNG档的所有pixel值纪录下来 是否可以还原成当初的像素矩阵呢? --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.137.176.70
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1488701223.A.D32.html ※ 编辑: k82817 (223.137.176.70), 03/05/2017 16:11:15
1F:嘘 Ommm5566: 作业自己做 03/05 16:09
※ 编辑: k82817 (223.137.176.70), 03/05/2017 16:12:40
2F:→ k82817: 已经读取到png的像素值,也写入进了66DK.raw当中 03/05 16:16
3F:→ k82817: 如果打开66DK.raw看起来和原始的png档是一样的 03/05 16:16
4F:→ k82817: 想知道为什麽影像看起来正常,但是像素却不一样了? 03/05 16:17
5F:推 Bencrie: 我先猜你 raw 的 y 轴上下颠倒 03/05 16:42
6F:→ k82817: B大 你是指程式产生的DK66.raw吗? 03/05 17:11
7F:→ k82817: 可是我是透过cvGet1D去抓PNG档第一点的值,应该不会有上下 03/05 17:12
8F:→ k82817: 影像下方有一个小白点,raw档看起来正常的 03/05 17:16
9F:→ k82817: 应该没有上下颠倒的问题 03/05 17:16
10F:推 Bencrie: 或者 pixel format 不一样?RGB BGR ARGB BGRA 03/05 18:04
11F:→ k82817: 影像为RGB 03/05 19:06
12F:→ k82817: source_image_array.raw 这个档案并没有格式的问题 03/05 19:07
13F:→ k82817: 在存这个档案的时候,是将原始矩阵的值直接写进去 03/05 19:09
14F:→ k82817: 档案的前两个位原组,就是影像的第一个Pixel值 03/05 19:11
15F:推 Bencrie: 你的 raw 跟我想像中的 raw 好像不一样 XD 03/05 19:11
16F:→ k82817: 对,我的RAW档并不是PS在使用的那种 03/05 19:21
17F:→ k82817: 他只是单纯纪录每一点的pixel值 03/05 19:22
※ 编辑: k82817 (223.137.176.70), 03/05/2017 19:43:20
18F:推 Bencrie: 我用 GIMP 开,那两个 raw 影像不一样啊 03/05 19:25
19F:→ Bencrie: 原始那张比较暗,值比较小 03/05 19:26
20F:推 Bencrie: 你如果怕 OpenCV 帮你做多余的事情就自己用 libpng 解 03/05 19:30
21F:→ k82817: B大 你可以告诉你用GIMP打开原始影像时 03/05 19:47
22F:→ k82817: 前五个像素值是多少吗? 03/05 19:48
※ 编辑: k82817 (223.137.176.70), 03/05/2017 19:48:59
23F:→ k82817: 我在想存成PNG档时,像素的值是不是就已经跑掉 03/05 19:57
24F:→ k82817: 因为PNG档的前五个像素就已经和source_image_array不同了 03/05 19:58
25F:推 FallwinDs: OpenCV 预设值应该是BGR 03/06 14:29
26F:推 Zero0910: cvLoadImage第二个参数应该要下CV_LOAD_IMAGE_ANYDEPTH 03/06 15:27
27F:→ Zero0910: 不然OpenCV会把读进来的影像转成8bits 03/06 15:27
28F:→ k82817: zero大 你是说要这要下吗? 03/06 15:35
29F:→ k82817: cvLoadImage( filename,CV_LOAD_IMAGE_ANYDEPTH );?? 03/06 15:36
30F:→ k82817: 因为我去查百度,-1是读取预设通道 0是转成灰阶 03/06 15:37
31F:→ k82817: 1是读取成彩色图 03/06 15:38
32F:→ k82817: fall大 所以我去读取s.Val[0],因为这张png档并没做rgb处理 03/06 15:47
33F:→ k82817: 去读取s.Val[1]和s.Val[2]都是0 03/06 15:47
34F:→ k82817: 我想问题应该是出在source image array.raw转成png的过程 03/06 15:51
35F:→ k82817: 因为png的pixel已经和source image array.raw完全不相同了 03/06 15:53
36F:→ k82817: ,可是那是别人的dll档,无从研究 03/06 15:53
37F:推 Zero0910: 我手上的文件是写/* 8 bit, color or gray - deprecated 03/06 15:54
38F:推 Zero0910: ↑参数下-1的话 03/06 16:01
39F:→ Zero0910: 我用cvLoadImage( filename,CV_LOAD_IMAGE_ANYDEPTH ); 03/06 16:02
40F:→ Zero0910: 前几个pixel是 0x1013 0x4013 0x6013 0xA012 跟你的raw 03/06 16:07
41F:→ Zero0910: 也不太像就是.. 03/06 16:07
42F:推 Bencrie: 他的 png 是 16bits grayscale 03/06 17:37
43F:→ grayStone: 去看官方文件不要看百度 03/06 19:29
44F:推 TeaEEE: 有color profile吗? 03/07 13:34
45F:→ k82817: tea大 是说raw的color profile? 03/08 00:25







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP