質問編集履歴

3

タイトル誤字修正

2019/02/08 01:22

投稿

trickster
trickster

スコア14

test CHANGED
@@ -1 +1 @@
1
- C#,OpenCVで一度に良い込めない大きなマルチページTIFF(16Bit / Gray画像)に対するアクセスについて
1
+ C#,OpenCVで一度に読み込めない大きなマルチページTIFF(16Bit / Gray画像)ファイルに対するアクセスについて
test CHANGED
File without changes

2

解決しました

2019/02/08 01:22

投稿

trickster
trickster

スコア14

test CHANGED
File without changes
test CHANGED
@@ -73,3 +73,31 @@
73
73
  // ・・・ imgは BitmapFrame型。 ★これからTiff画像データである16bit配列を生成したい
74
74
 
75
75
  ```
76
+
77
+
78
+
79
+
80
+
81
+ 【解決】(3)にコードを追加して解決しました。 ・・hihijijiさん、ありがとうございました。
82
+
83
+ ```C#
84
+
85
+   // ・・(3)の続き
86
+
87
+ var datas = new UInt16[img.PixelWidth * img.PixelHeight]; // 16bitデータ格納先
88
+
89
+ var stride = img.PixelWidth * ((format.BitsPerPixel + 7) / 8); // CopyPixelsに指定する stride
90
+
91
+ img.CopyPixels(datas, stride, 0); // データの取得
92
+
93
+ var img16 = new Img16Gray(datas, img.PixelWidth, img.PixelHeight); // Gray 16bitデータとして保存。オリジナルクラス
94
+
95
+ var myBitmap = img16.ToBitmapRgb24(); // 表示用のビットマップ生成 (Gray16bit=> Rgb24bitに変換)
96
+
97
+ pboxMain.Image = myBitmap;
98
+
99
+ Refresh();
100
+
101
+
102
+
103
+ ```

1

(3)内のコメントの間違いを修正しました

2019/02/08 01:02

投稿

trickster
trickster

スコア14

test CHANGED
File without changes
test CHANGED
@@ -70,6 +70,6 @@
70
70
 
71
71
  var img = decoder.Frames[page]; // iページ目の画像
72
72
 
73
- // ・・・ imgは FormatConvertedBitmap型。 16bitデータとて読み込めてない模様
73
+ // ・・・ imgは BitmapFrame型。 ★これからTiff画像データである16bit配列を生成
74
74
 
75
75
  ```