噓 Ommm5566: 作業自己做 03/05 16:09
※ 編輯: k82817 (223.137.176.70), 03/05/2017 16:12:40
→ k82817: 已經讀取到png的像素值,也寫入進了66DK.raw當中 03/05 16:16
→ k82817: 如果打開66DK.raw看起來和原始的png檔是一樣的 03/05 16:16
→ k82817: 想知道為什麼影像看起來正常,但是像素卻不一樣了? 03/05 16:17
推 Bencrie: 我先猜你 raw 的 y 軸上下顛倒 03/05 16:42
→ k82817: B大 你是指程式產生的DK66.raw嗎? 03/05 17:11
→ k82817: 可是我是透過cvGet1D去抓PNG檔第一點的值,應該不會有上下 03/05 17:12
→ k82817: 影像下方有一個小白點,raw檔看起來正常的 03/05 17:16
→ k82817: 應該沒有上下顛倒的問題 03/05 17:16
推 Bencrie: 或者 pixel format 不一樣?RGB BGR ARGB BGRA 03/05 18:04
→ k82817: 影像為RGB 03/05 19:06
→ k82817: source_image_array.raw 這個檔案並沒有格式的問題 03/05 19:07
→ k82817: 在存這個檔案的時候,是將原始矩陣的值直接寫進去 03/05 19:09
→ k82817: 檔案的前兩個位原組,就是影像的第一個Pixel值 03/05 19:11
推 Bencrie: 你的 raw 跟我想像中的 raw 好像不一樣 XD 03/05 19:11
→ k82817: 對,我的RAW檔並不是PS在使用的那種 03/05 19:21
→ k82817: 他只是單純紀錄每一點的pixel值 03/05 19:22
※ 編輯: k82817 (223.137.176.70), 03/05/2017 19:43:20
推 Bencrie: 我用 GIMP 開,那兩個 raw 影像不一樣啊 03/05 19:25
→ Bencrie: 原始那張比較暗,值比較小 03/05 19:26
推 Bencrie: 你如果怕 OpenCV 幫你做多餘的事情就自己用 libpng 解 03/05 19:30
→ k82817: B大 你可以告訴你用GIMP打開原始影像時 03/05 19:47
→ k82817: 前五個像素值是多少嗎? 03/05 19:48
※ 編輯: k82817 (223.137.176.70), 03/05/2017 19:48:59
→ k82817: 我在想存成PNG檔時,像素的值是不是就已經跑掉 03/05 19:57
→ k82817: 因為PNG檔的前五個像素就已經和source_image_array不同了 03/05 19:58
推 FallwinDs: OpenCV 預設值應該是BGR 03/06 14:29
推 Zero0910: cvLoadImage第二個參數應該要下CV_LOAD_IMAGE_ANYDEPTH 03/06 15:27
→ Zero0910: 不然OpenCV會把讀進來的影像轉成8bits 03/06 15:27
→ k82817: zero大 你是說要這要下嗎? 03/06 15:35
→ k82817: cvLoadImage( filename,CV_LOAD_IMAGE_ANYDEPTH );?? 03/06 15:36
→ k82817: 因為我去查百度,-1是讀取預設通道 0是轉成灰階 03/06 15:37
→ k82817: 1是讀取成彩色圖 03/06 15:38
→ k82817: fall大 所以我去讀取s.Val[0],因為這張png檔並沒做rgb處理 03/06 15:47
→ k82817: 去讀取s.Val[1]和s.Val[2]都是0 03/06 15:47
→ k82817: 我想問題應該是出在source image array.raw轉成png的過程 03/06 15:51
→ k82817: 因為png的pixel已經和source image array.raw完全不相同了 03/06 15:53
→ k82817: ,可是那是別人的dll檔,無從研究 03/06 15:53
推 Zero0910: 我手上的文件是寫/* 8 bit, color or gray - deprecated 03/06 15:54
推 Zero0910: ↑參數下-1的話 03/06 16:01
→ Zero0910: 我用cvLoadImage( filename,CV_LOAD_IMAGE_ANYDEPTH ); 03/06 16:02
→ Zero0910: 前幾個pixel是 0x1013 0x4013 0x6013 0xA012 跟你的raw 03/06 16:07
→ Zero0910: 也不太像就是.. 03/06 16:07
推 Bencrie: 他的 png 是 16bits grayscale 03/06 17:37
→ grayStone: 去看官方文件不要看百度 03/06 19:29
推 TeaEEE: 有color profile嗎? 03/07 13:34
→ k82817: tea大 是說raw的color profile? 03/08 00:25