CGエンジニア検定エキスパートは最短1週間で合格できる!

CGエンジニア検定について

CGエンジニア検定とは,CG-ARTSが主催するCG-ARTS検定のうちの一つです. CG分野の開発や設計を行うエンジニアやプログラムのための検定であり,CG-ARTS検定の中でも受験者数が最も多いです.

時期としては,毎年7月と11月に実施されます.

自身の勉強時間

  • 学習時間: 25時間程度
  • 公式テキスト・過去問題集使用

最短1週間の理由

なぜ最短で1週間で合格できたのかは,数学ができるかどうかにつきます.この検定では計算問題が出題されますが

のように要求される知識は多岐にわたります.特に行列計算については大問1つ用意されているほどです. ただし,式の証明だったり定義を聞かれることはありませんので計算方法を知っている程度で大丈夫です.

反対に,数学が苦手な方は時間がかかります.過去問からどの程度の数学力があるのかを把握し,数学の学習をしましょう.

準備

検定の形式について

検定の形式はマークシートです.このマークシートは全て4択となっており40問程度出題されます. 検定時間は80分ですので1問2分程度の時間が使えます.

何が出題されるのか

まずは出題分野を把握してみましょう. https://www.cgarts.or.jp/kentei/about/cg_engineer/index.html

  • 基礎(カメラについて.歴史は出題された覚えがない)
  • 座標変換
  • CG理論
  • 画像処理
  • 多様な表現
  • CGシステム
  • 知的財産権

合格するために必須となるのが公式テキストと過去問です.理由は公式テキストにしか載っていないような 問題が出題される点です.座標変換やモデリング,レンダリング,画像処理などは検索すれば大学で使用されているであろう講義PDFだったり 数学のサイトがでてきます.しかし多様な表現が曲者です.この分野の情報は検索してもほぼヒットしません.

  • 矢印グリフ
  • フォーカス+コンテキスト
  • コーンツリー
  • ヘッジホッグ法

聞いたことがない単語が大問1つ出題されます.反対に言えば,公式テキストがあれば確実に点を取れる箇所です. ここを落とすともったいないのでしっかり学習するようにしましょう.

どの程度取ればよいのか

この検定は,100点中,70点以上で合格です(多少変動するようです).出題数は40問程度なので間違えてよいのは12問までを目安にしてください. ただし問題の種類による傾斜配点があるのかは不明ですのであくまでも目安です.

学習手順(1日目~3日目)

1日の流れとしては公式テキストを軽く読む→公式問題集を解く→わからなかった部分を復習するです.

最初に公式テキストを一気に流し読みします.なんとなくこの式はそういうことを表しているのか,この曲線はこういう目的で使用されているのかを 把握します.

次に,公式問題集を解いてみます.公式問題集は解説付きですからなぜ間違ったのかが明確になり理解が深まります. 分からない部分や間違いが多い部分は公式テキストを参照し理解を深めて下さい.

公式問題集はベーシック・エキスパート各3回分収録されているので3日で終わらせることができます.3日目までに公式テキストは全て読んだ状態にしておくのが良いです.

学習手順(4日目~7日目)

より具体的に公式テキストを確認します.3日目までに分からなかった箇所を見直したりしましょう. そして再度公式問題集を解きます.すると苦手な箇所がより鮮明になります.ここで70%以上取れていればほぼ合格です.

当日

各試験会場で頑張りましょう.当日は公式テキストの索引を利用して単語の見直しをしておくと安心して試験に臨めます.

番外編

学習の話から外れますが

  • CG-ARTSから試験1週間前になると受験票が届けられます.4cmx3cm(履歴書の写真サイズ)の証明写真を貼っておきましょう.
  • 基本HB以上の鉛筆や消しゴムなどの筆記用具のみ使用できます.電卓は使用できません.
  • 上靴やスリッパが必要な会場があります.会場にあるとも限らないので持って行った方が無難です.

検定後

回答は受験当日の5日後に公開されます.間違いが12問以下であれば合格です.確実な合否が分かるのは 1か月後です.マイページの受験履歴から確認できます.

CG-ARTS | 検定

フィルタを用いた画像変換

フィルタによる画像の変換

画像の変換について,あるピクセルを変換する際に,周りのピクセルを利用したか否かで処理できる変換が違う.

例えばしきい値変換は,あるピクセルの画素値がしきい値未満なのかそれ以上なのかわかればいいので周辺のピクセルの情報は関係ない.

しかし画像をぼかしたり,エッジ検出には周辺のピクセルの情報がないと変換できない.空間フィルタリングなどと呼ぶ.

フィルタの概念

フィルタによる計算は,以下の式で計算される.


\displaystyle g(i, j) = \sum_{n = -W}^W \sum_{m = -W}^W f(i+m, j+n)\mathrm{Filter}(m, n)

数式だけ見ると, \sumが2つも出てきたり,i, j, m, nなどと変数が多かったりと分かりにくい. 図で見てみた方がわかりやすい.

f:id:lapping:20190830201649p:plain

上の図は,5ピクセル×5ピクセルの画像である.  (i, j) = (3, 3)とする(赤枠).この時,フィルタを


\begin{bmatrix}
-1 & 0 & 1 \\\ 
-1 & 0 & 1 \\\
-1 & 0 & 1
\end{bmatrix}

とする(W=1).フィルタの中心を赤枠に合わせ,それぞれのピクセルの画素値で掛け算し,最後に足し合わせたものが変換後の赤枠の 画素値である.計算すると,


   f(2, 2) \times \mathrm{Filter}(-1, -1) + f(3, 2) \times \mathrm{Filter}(0, -1) + f(4, 2) \times \mathrm{Filter}(1, -1) \\\
+f(2, 3) \times \mathrm{Filter}(-1,  0) + f(3, 3) \times \mathrm{Filter}(0, 0) + f(4, 3) \times \mathrm{Filter}(1,  0)  \\\
+f(2, 3) \times \mathrm{Filter}( -1,  1) + f(3, 4) \times \mathrm{Filter}(0, 1) + f(4, 4) \times \mathrm{Filter}(1,  1) \\\ \\\
= 100 \times (-1) + 110 \times 0 + 130 \times 1 \\\
+ 120 \times (-1) + 130 \times 0 + 140 \times 1 \\\
+ 130 \times (-1) + 140 \times 0 + 160 \times 1 \\\
=  80
 

変換後の (3, 3)のピクセルの画素値は80である.また,変換後の画素値はフィルタに依存していることが分かった.

ただし (i, j) = (1, 1)の場合は,周辺のピクセルが少ないため何らかの方法で補間する必要がある.

平滑化

平均化フィルタ

平均化フィルタは,各フィルタの値が

 \frac{1}{(2W+1)^2}

となるフィルタ. 3×3のフィルタなら全て \frac{1}{9}になり, 5×5のフィルタなら全て \frac{1}{25}である.

ガウシアンフィルタ

ガウシアンフィルタは,正規分布に従うフィルタ.

 
G(x, y) = \frac{1}{2 \pi {\sigma}^2} \mathrm{exp}(-\frac{x^2+y^2}{2{\sigma}^2})

 {\sigma}^2 = 1とした場合である.フィルタの値の雰囲気はグラフでつかめると思う.

f:id:lapping:20190830212924g:plain

f(x,y)=1/(2pi)*exp(-(x^2+y^2)/2) - Wolfram|Alpha

バイラテラルフィルタ

こちらも正規分布を利用したフィルタ.ガウシアンは輪郭線も平滑化するが,バイラテラルフィルタは輪郭線を残したまま平滑化できる. 式は複雑なのでここには載せない. 興味がある方は以下のリンクを参考にするべきである.

バイラテラルフィルタ | イメージングソリューション

エッジ検出

微分フィルタ

近くの画素値と差をとったフィルタ.例えば


\begin{bmatrix}
  0 & 0 & 0 \\\ 
-1 & 0 & 1 \\\
  0 & 0 & 0
\end{bmatrix}

は左右の画素値の差を求めることができている.画素値が大きく変化する輪郭線は,これにより強調される.

ソーベルフィルタ

横方向の微分フィルタの後に縦方向に平滑化フィルタをかけるとノイズを低減できる.


\begin{bmatrix}
-1 & 0 & 1 \\\ 
-2 & 0 & 2 \\\
-1 & 0 & 1
\end{bmatrix}

鮮鋭化

エッジを強調するが濃淡を変化させない.


\begin{bmatrix}
0 & -k & 0 \\\ 
-k & -4k & -k \\\
0 & -k & 0
\end{bmatrix}

  •  kは制御パラメータ.

実際の処理

コンピュータで行う処理を手計算で解くのは時間が非常にかかる. 変換計算は便利な計算サイトにお任せする.下のリンクでは,QuinSconceなる画像を,全ての要素が \frac{1}{9},サイズ3のフィルタで変換した.

ImageConvolve {{1/9, 1/9, 1/9}, {1/9, 1/9, 1/9}, {1/9, 1/9, 1/9}} - Wolfram|Alpha

入力フォームの下のアップロードで自由な画像を変換することができるので,いろいろなフィルタを入力して試すのが良い.

また,ガウシアンフィルタのようにフィルタ計算が複雑な場合やフィルタサイズが大きい場合,英語でフィルタ名とパラメータを指定すれば変換してくれる.

GaussianFilter 10 - Wolfram|Alpha

指定できるのは,以下のリンクの一覧を参考にしてほしい.

Image Filtering & Neighborhood Processing—Wolfram Language Documentation

メタボールの分布式とその形状

メタボールとは?

メタボールは,簡単に言えばメタボール同士で相手を引っ張り合う性質を持つ形状のこと.

メタボールが引っ張り合う図.
2つのメタボールが引っ張り合っている.

メタボールを表現する式

CGで使われるため,何らかの計算式からどのように引っ張り合うかを求めている.このことを踏まえて,メタボールは濃度分布で表現される球(の集合)のことを指す.そして, 濃度分布の計算式は以下の通り.

D(r) = D_{\rm{center}} \exp(-ar^ 2)
  • D_{\rm{center}}は球の中心の濃度
  • aは濃度の減衰定数
  • rは球の中心からの距離
  • D(r)は距離rにおける濃度

3次元空間で原点にメタボールがあるとr = \sqrt{x^ 2+y^ 2},つまりr^ 2 = x^ 2+y^ 2であるため,

D(x, y) = D_{\rm{center}} \exp(-a(x^ 2+y^ 2))

と表せる.図で見てみよう.数式を入力するとプロットしてくれる便利なWebサイトがある.

Wolfram|Alpha: Computational Intelligence

プロット結果と等高線は以下の通り(D_\rm{center} = 1, a=1).

メタボールが引っ張り合う

メタボールが引っ張り合う時の分布は,メタボールの濃度分布の和で表現できる.

原点にあるメタボールは以下の式で表される.

D_1(x, y) = D_{\rm{center}} \exp(-a(x^ 2+y^ 2))

原点からx方向にx_0分だけ移動したメタボールは以下の式で表せる.

D_2(x, y) = D_{\rm{center}} \exp(-a( (x-x_0)^ 2+y^ 2))

このメタボール2つで表される濃度分布は

D(x, y)=D_1(x,y)+D_2(x,y)

と表せる(ただし,しきい値以上とする場合もある).これも図で見てみよう.

Wolfram|Alpha: Computational Intelligence

プロット結果と等高線は以下の通り(D_\rm{center} = 1, a=1, x_0=-2.25).

等高線は,メタボールが引っ張り合ったときの形になっている. x_0の値を変更すれば,メタボール同士がどの程度引っ張り合うのかがわかる.

メタボールの打ち消し

片方だけD_\rm{center} = -1としてみると,プロット結果と等高線は以下の通り.

軟式のテニスボールが凹んだような形状になる.

濃度分布が有限の範囲の分布関数

今までは,メタボールは以下の分布式で表した.

D(r) = D_{\rm{center}} \exp(-ar^ 2)

この分布式では,無限の範囲に分布を持つため形状の局所的な変更が難しい.そのことから,有限の範囲に絞った式も存在する.

\begin{eqnarray}D(r) =  \begin{cases} D_\rm{center}(1-(\frac{r}{R})^ 2 )^ 2 & (0 \leq r \leq R) \\\\  0  & (R \lt r)  \end{cases}\end{eqnarray}

ヒロイン鹿目まどかへの100の質問

ヒロイン鹿目まどかへの100の質問

ヒロイン鹿目まどかへの100の質問は,アニプレックスのフリーペーパー「ANI-COM」に掲載されたものである. 海外Wikiを参考に書き起こしておく.

f:id:lapping:20190811084929j:plain

Q A
1 あなたの名前を教えてください. 鹿目まどかです.
2 誕生日を教えてください. 10月3日です.
3 血液型を教えてください. A型です.
4 スリーサイズを教えてください. えええっ!そそそんなの測ったことないです......
5 家族構成を教えてください. お父さんとお母さん,それに弟の4人家族です.
6 あなたの職業を教えてください. 中学生です.
7 好きな食べ物を教えてください. えっと,一番の好物は......クリームシチュー.かな.
8 好きな動物を教えてください. 小さくてふかふかしてる生き物は,みんな大好き!
9 好きな教科を教えてください. う~ん,美術,かな......
10 苦手な教科を教えてください. 数学,理科,化学,あとそれから......物理もちょっと苦手かも.
11 気になる男の子はいますか? 弟のタツヤがやんちゃすぎて......いつも目が離せないんです.
12 学校はたのしいですか? すっごく楽しいですよ!
13 部活には入っていますか? はい,園芸部と手芸部をかけもちで.
14 座右の銘を教えてください. ええと......一日一膳?
15 特技を教えてください. どんなに寝坊しても遅刻しません!
16 宝物を教えてください. 初めて自分で取ったUFOキャッチャーのぬいぐるみ,トレホくんです.
17 自分を漢字一文字で表すと? え,とーー円?
18 自分の長所は? う~ん,ご飯の好き嫌いが少ないこと?
19 自分の短所は? そんなの,一杯ありすぎてこまります......
20 思い出の場所を教えてください. 新学期早々,駅前でものすごく派手に転んで,そのことが忘れられませんーー
21 好きな飲み物を教えてください. パパの特製ホットココア!すごく美味しいんです!
22 泳ぐのは得意ですか? ひ,平泳ぎなら少々 犬かきだって言われますけどーー
23 50メートル走のタイムを教えてください. 10秒は切れるんですよ!本当ですよ!
24 マイブームを教えてください. 最近は,友達のさやかちゃんの親父ギャグだとか.
25 きらいな食べ物を教えてください. まだ見たことないんだけど,イチゴの佃煮とかいうのは,ちょっとーー
26 今一番欲しいものは何ですか? え~と,iPodとか.格好良くていいなぁ.
27 高いところは苦手ですか? 校舎の屋上なら好きですよ!
28 雷は苦手ですか? 自分の部屋にいれば平気です.
29 晴れと雨,どちらが好きですか? やっぱり晴れてるほうが.
30 学校では鉛筆を使ってますか?シャーペンを使ってますか? 普段はシャーペンです.
31 朝食はいつも何を食べてますか? 毎朝色々.うちのパパはどんなお料理でも作れるんですよ!
32 幽霊を信じてますか? こ,こわいこと言わないでください!
33 何か楽器は弾けますか? リコーダーなら,少しは......
34 アウトドア派ですか?インドア派ですか? 友達と一緒ならどっちも楽しいです.
35 弟と喧嘩したりしますか? まだ4歳だから,喧嘩にはならないかな......
36 携帯電話は持っていますか? はい,一応.
37 自宅から学校までの登校時間を教えて下さい. 急いだら15分くらいかな.
38 友達は多いほうですか? う~ん,普通じゃないかな......
39 好きなスポーツを教えて下さい. オリンピックとかだと,誰を見ても感動しちゃいます.
40 料理は得意ですか? パパに教わっているんだけど,なかなか上手く行きません......
41 好きな色を教えて下さい. 白,かな.あとピンクも.
42 これだけは許せないと思うことを教えてください. オレオレ詐欺とか,ひどいと思います!
43 身長を教えてください. 来年にはきっと,150センチになってます!
44 靴のサイズを教えて下さい. 22です.
45 将来の夢を教えてください. う~ん,世界一周旅行とか,してみたいかな......
46 結婚願望はありますか? ママみたいに格好良い旦那さんが見つかったらいいな......
47 熱い飲み物は苦手ですか? ふぅふぅすれば,なんとかなります.
48 コーヒーは苦いほうが良いと思う? 苦いのは大人になってからでいいかな,と,
49 いつも何時に寝ますか? 11時くらいまでには,一応.
50 いつも何時に起きますか ? 7時に目覚ましをかけてます.
51 寝るときは,ベッド派?布団派? 家ではベッドを使ってます.
52 集中力に自信がありますか? あんまり......
53 おすすめダイエット法はありますか? おかわりを我慢すること,かな.
54 温かいそばと冷たいそばはどっちが好きですか? どっちも大好きです!
55 利き腕を教えて下さい. 右,ですよね.
56 最近起こったラッキーだったことを教えてください. このあいだ,はじめてハート型ピノを引きました!
57 最近起こった不運だったことを教えてください. 今朝,自動改札に二回引っかかりました......
58 学校の校歌の曲名を教えてください. 「ああ麗しの見滝原」です.
59 好きな花を教えてください. チューリップとか,ガーベラとかが好きです.
60 一番好きなことわざを教えてください. えっと......一日一膳?
61 一番好きな四文字熟語を教えてください. んんと......一日一膳!お茶碗一杯のご飯があればその日は大丈夫,って意味ですよね?
62 春といえば何ですか? うーん,桜餅!
63 夏といえば何ですか? えっと,かき氷!
64 秋といえば何ですか? むむむ,スイートポテト!
65 冬といえば何ですか? アップルパイ!......あれ?食べ物ばっかり?
66 タイムマシンがあったら,過去と未来,どちらに行きたいですか? やっぱり,未来の世界を見てみたいかな.
67 漫画と小説,どちらが好きですか? どちらかというと,漫画の方が.
68 お小遣いはいくらですか? 月に2000円......いまママに値上げ交渉中です!
69 よく人に言われるあなたの癖を教えてください. 居眠りしてばっかり,って言われます......そんなことないのに!
70 趣味を教えて下さい. んんと......落書きっていうか,イラスト?
71 体重を教えて下さい. 嫌です!
72 何か資格は持っていますか? 今のところは,何も......
73 寝るときは何を着て寝ますか? え?パジャマですけど???
74 告白されたことはありますか? 幼稚園のとき,ひよこ組のミツル君に......て,照れます!
75 明日地球が滅亡するとしたら,どうしますか? そんな怖いこと聞かないでください......
76 毎日の日課を教えてください. 朝の身支度のときの,ママとのお喋りとか......
77 いつも持ち歩いているものを教えてください. ばんそうこうセットです.よく転ぶので.
78 和食派?洋食派? 美味しければどっちも!
79 通学方法を教えてください. 歩きです.とても通るのが楽しい通学路です.
80 寝る前一番最後にすることを教えてください. 寝癖がつかないように髪の毛を押さえます.
81 朝起きて一番最初にすることを教えてください. 庭仕事しているパパにおはようを言います.
82 住んでいる場所を教えてください. 見滝原という町の住宅街です.
83 それはどんな所でしょうか. パパが友達の設計士に頼んで,ママが知り合いの建築会社に立ててもらった素敵な家なんです.
84 今までで一番面白かったことを教えてください. 友達の仁美ちゃんのお家でお泊りパーティーをしたときです!
85 今までで一番悲しかったことを教えてください. 小さい頃に飼っていた九官鳥のピーちゃんが死んじゃった時です......
86 絶叫マシーンは好きですか? あ,あんまり怖いのは......ちょっと......
87 視力を教えて下さい. どっちも1.5です.でも2.0はないと自慢にはならないかな......
88 1年間の行事で一番何がすきですか? お正月かな.テレビが楽しいので.
89 クラスの係りは何かやってますか? 保健委員をやってます.
90 休み時間はどんなことをしてますか? 友達とお喋りしたり,屋上で空を眺めたり......かな?
91 1日の勉強時間を教えてください. ご飯の後で一時間ぐらい頑張ります.
92 友達に相談する方?される方? してばっかりです......
93 学校が休みの日は何をしてますか? さやかちゃんと遊びに出かけたり,あとはパパの手伝いをしたり......ですね.
94 生まれ変わるとしたら,何になりたいですか? またパパとママの子供に生まれたいなぁ.
95 学校の校則は厳しいですか? みんな嫌がってるけど,私はそれほどでもないかな,って思います.
96 学校でのお昼は,お弁当?給食? 購買があるんですけど,私はパパのお弁当です.
97 親友は何人? すごく仲良くしてるのは,さやかちゃんと仁美ちゃんの二人,かな?
98 学校帰りによく道草する場所は? 森とか小川とか,楽しいところがいっぱいあって,困っちゃうぐらいです.
99 芸能人に興味はありますか? 氷川きよしさんのファンです!私,けっこう演歌にはうるさいんですよ?
100 この質問に答えた感想は? けっこう大変でした.疲れたぁ......

参考

Puella Magi Wiki: https://wiki.puella-magi.net/100_Questions