質問するログイン新規登録

回答編集履歴

2

誤変換の修正

2021/01/13 02:08

投稿

fana
fana

スコア12286

answer CHANGED
@@ -39,7 +39,7 @@
39
39
  cv::Mat Img( IMG_SIZE, IMG_SIZE, CV_8UC1 ); //IMG_SIZE*IMG_SIZEの画像バッファを用意
40
40
  Img = 100; //画像全体を背景の輝度値で埋めておく.値はてきとー.
41
41
 
42
- //全画素について操作し,その画素の輝度値を決めていく
42
+ //全画素について走査し,その画素の輝度値を決めていく
43
43
  for( int y=0; y<IMG_SIZE; ++y )
44
44
  {
45
45
  unsigned char *pI = Img.ptr<unsigned char>( y );

1

内容説明を追加.

2021/01/13 02:08

投稿

fana
fana

スコア12286

answer CHANGED
@@ -1,5 +1,8 @@
1
+ 円を,球を正射影した像だと考え,画像上の画素位置(x,y)に対して,(3次元空間での)円の中心から(x,y)に対応する球面上の点までのベクトルを考えることができます.
1
- 絵を作るに OpenCV を使ってますが,計算内容コードからるかと.
2
+ 各画素輝度値,点Aから求めたベクトルと,各画素位置ら求めたベクトルの内積に基づき決定するのが簡単でしょう
2
3
 
4
+ ↓のサンプルコードでは絵を作るのに OpenCV を使ってますが,計算内容はコードからわかるかと.
5
+
3
6
  ```C++
4
7
  const int IMG_SIZE = 240; //画像サイズ(x,yで共用)
5
8
  const int CENTER = IMG_SIZE/2; //てきとーに決めた円の中心(x,yで共用)