読者です 読者をやめる 読者になる 読者になる

たぶん週刊「今週の進捗」

1週間に勉強したことや実装したことをネタに、週に1回(主に土日に)更新していく予定です。「多分」なので、臨時休刊があってもご海容ください。

11月15日の記事の訂正

Siv3D

多分週刊「今週の進捗」 という記事に
「Siv3Dには顔認識がないのが残念」という旨の記述をしたら、コメントにてSiv3Dに顔認識機能は存在するとの指摘を頂きました。
なんと。これは大変な失礼を。

できたー。
写真だけじゃなくて、イラストの顔検出もできるなんてすげー。

書いたコード

顔検出 - Play Siv3D! を参考に自分なりに書いてみたコードがこちらです。

# include <Siv3D.hpp>

void Main()
{
	Image image(L"lenna.jpg");
	DynamicTexture texture;

	while (System::Update())
	{
		for (const auto rect : Imaging::DetectFaces(image, CascadeType::Anime, 3, {40, 40}) )
			rect.overwriteFrame(image, 3, 3, Palette::Red);
		texture.fill(image);

		if (texture)
		{
			texture.draw();
		}
	}
}

わからなかったところ

  • auto とは?
  • DetectFaces() は返り値として何を返しているのか?
    • 検出した顔の位置を配列の形で返している?