ズームレンズ広角端の歪

今使っているキヤノンのコンパクトデジカメはiPhoneなんかのスマホなナンチャッテ高画質と比較すると圧倒的にきれいなんだけど、電源オン時にズームが広角端になってるのがいまいち。スマホのカメラも起動時はだいたい広角側になってるので同じ。

このコンデジは広角は35mm換算で24mm相当になってて、広角側で直線のあるものを撮ると結構歪んでる。少しズーム側に動かすとか、後で中央部分をトリミングするとか簡単に対処できるんだけど、撮って出しで掲載したらそれは気になる。コンデジの電源オン時とか、スマホアプリ起動時は最後のズーム比くらい覚えててほしい。

新聞記事(新聞社の記者が撮ってるようなやつ)なんかですら、人物集合写真なんかだと、どうも広角端で撮っているようで端っこの人がぐにょーてなっててなんだかなーとか思う写真もときどき見かける。

ボリューム歪像とは何か
http://www.dxo.com/jp/photography/…

 

 

マルチバンドGPアンテナを分解してみた

もう何年も使っていなかったコメット GP-93 を捨てるので分解。

144/430/1200MHzトライバンドのGPアンテナでN接栓。1.8mくらいで継ぎ手が無くて、ラジアルも短いくて、取り回しが良い。根元のコネクタ付近にあるイモネジ1本を外すとスポッと抜けた。破壊するしかなかったHA-750Bとは大違い。

▼全体像。フェーズシフタがたくさんある。頂部の2割くらいは何も入らない。
GP93 (1)

▼ベースロード部分。3バンドの構成になっていることがなんとなく分かる。L字型のヒゲが出てて、これは1200MHzのコイルかな。
GP93 (2)

▼一番下の位相器。1200MHz用と430MHz用だと大きさでだいたい分かる。
GP93 (3)

▼中央付近の位相器。144MHzのための「Cフェーズ(取説の表記)」がある。位相器と違って2段にはならないから、動作としては試験にも出る短縮コンデンサと思われる。
GP93 (4)

▼ラジアル。17cm弱と短い。ちょうど430MHzの1/4λなので144MHzでは動作してないことになる。取り付けるマストに細かい指定は無いから、144MHzはノンラジアル動作。
GP93 (5)

1本もので継ぎ手が無いからそもそも分解する必要も無くて中を見たのは今回が初めて。だいたい予想できる構造で手堅くできてる。ただしエレメント全体がほとんどフェーズシフタでできてるようなもので、対象バンド以外は他バンドの折り返しで攪乱されるだろう。1200MHzは同軸ケーブルで作ったコーリニアのが高性能かも。144MHzはラジアル無し、延長型で実効長が長いとはいえ一段動作なので多段GPよりも水平面の利得はそれほど良くもないはず。

シングルやデュアルバンドのGPより性能がいまひとつな気がするのはこの構造のせいだろうなっていうのが見てよく分かった。やっぱりマルチバンドアンテナはお手軽だけど複雑だしシングルバンドに比べて性能はそれなりだってわかった。

 

人間の腕は逆にも曲がるのが普通

もう暑いから半袖。この時期になると結構な猿腕なのでたまに腕が変、逆に曲がってて気持ち悪いとかいわれる。次のような方々と同じで猿腕。専門用語だと過伸展、反張肘、後屈とか。

長濱ねる
城恵理子
KARAヨンスン

こういうのってずっと前の小泉今日子が現役のころからあったし。でもねー、人間の肘って逆に曲がるのが普通なんですよ。曲がらん方がおかしい、とまでは言わないけど。

人間特性計測データベース
http://www.tech.nite.go.jp/human/index.html

ここから肘関節の伸展を取り出してExcelでちょいちょい加工。

elbowrom.png

0度を超えて伸展する(逆に曲がる)角度を見てみるとこんな感じ。グラフの0のところより左側の方(逆に曲がる)が明らかに多い。

  • 最頻値は男性も女性も6度。頻度2位は8度、3位は男性13度・女性12度。
  • 平均値は男性6.7度、女性8.9度。標準偏差は男性11.0度、女性10.6度。
  • 最大値は男性32度、女性37度。

解剖学的には肘関節の可動域(ROM)は伸展0~5度が正常、女性・子供では~10度は普通。15度以上が過伸展と言われるが、実際の測定値ではもっと大きくてボリュームゾーンは5~15度くらい、この範囲だと性差もあまり無い感じ。統計は20歳以上の男女の自動可動域(自分で動かせる範囲)しかないので20歳未満や他動可動域(外からの力で動かす)のデータが入るともっと過伸展側に振れるだろう。同学年の高校男子で60度以上反対に曲がる人も見たことあるし。

まっすぐよりも伸びない側を見ると、グラフで青い部分が多少目立つ通り男性のが多い。これはムキマッチョで伸展制限があるとかそういうのではないかな。ただ、あくまで多少多い程度で過半数の男性に伸展制限は無いか過伸展するわけだから、「女性・子供は肘が過伸展する」(=過伸展しないのは成人男性のみ) なんていうより「成人男性には肘が伸び切らない人も目立つ」くらいに言い替えた方がジェンダーがフリーだと思う。

元データから数値で過伸展する人の割合を出すとこんな感じ。カッコ内は正規分布に当てはめた場合の確率。反る反らないだけなら8割近くが反るし、過半数が5度を超える。4割以上の10~15度だと結構逆に曲がってる感は出るはずで、20度以上曲がる人はたぶん両肘の内側どうしをくっつけられる。

  • 0度以下 ・・・ 23.7% (23.5%)
  • 0度を超える ・・・ 76.3% (73.5%)
  • 5度を超える ・・・ 61.3% (60.3%)
  • 10度を超える ・・・ 41.3% (42.0%)
  • 15度を超える ・・・ 23.5% (25.4%)
  • 20度以上 ・・・ 13.2% (13.0%)
  • 30度以上 ・・・ 1.35% (2.00%)

はっきりいって肘が逆に曲がらない人は2割の少数派

腕逆に曲がってるキモい、そんなに曲がるわけ無いとか言う人は自分の体が少数派だってことを思い知るがよい。

これにキャリーアングル(外反角)と肩の回転、上腕三頭筋まわりの弛み(二の腕振り袖)が組み合わさると「曲がりすぎー」に見える場合があるっていうのが自分的な結論。キャリーアングルは女性のが大きい(生理的外反の程度が大きい)から猿腕が女性に多いというのは間違ってないと思うが、ヤセとか筋力が無いは関係無い気がする。※外反肘の程度が大きい女性だと、逆にはほとんど曲がらなくても手首が離れるほどの「猿腕」な人もいる。

細身の女子に多い!スラリとした腕の敵「猿腕」って何?
https://moteco-web.jp/diet/20139

そもそも「猿腕」ていう言葉があいまいで、いろいろな状態の人がいる。猿腕で画像検索すると、肘が逆に曲がる人(過伸展、肘の内側がくっつく)と、逆には曲がらず横にずれてる人(外反肘、肘の内側が正面を向く)、その組み合わせになってる人、前腕を捻じっているだけの人などいろいろ。「猿腕」の状態を「猿手」と表現していることもよく見かけるが、医学用語としての猿手ではない。いずれにしても人間の腕は5~10度外反してるのが正常だし、伸展も5~10度は普通だから、やっぱり腕が曲がってない、まっすぐにしかならない方が少数派。

 

 

暇なんで動画でも見る

連休で暇すぎるのでバカ動画、事故・グロ・ドッキリ動画なんかを延々と見て無駄な時間を過ごした。

ユーチューバーはゲームのアイテム課金に100万円使ってみたとかいう動画で無駄なことしてるなとか思ったが、ここ数年で自分も100万円くらいはデジタルアイテム・デジタルガジェットに浪費してる気がした。無駄遣いだったと感じるものをあげると…

Mac18万、iPhone10万、MSDN 15万、Windows OS 10万、Office Mac 4.5万、Offce Pro Plus 10万、ATOK 1万、Android有料アプリ2万、iPhone有料アプリ2万、Windowsストア有料アプリ2万…

すぐに思い出すものだけで75万円以上浪費してて、ここのブログネタ以外では結局いらんわーてっなってるのが多い気がする。広告設定もしてないからwordpressが儲かるだけで特に見返りがあるわけでもなく。

トップなユーチューバーは広告やアフィ収入がっぽがっぽで100万円くらいすぐ回収できるんだからううらやましいのです。

自宅使用プログラム(HUP)でOfficeを使ってみる。

個人なのにMS Office Pro PlusをSA付きで買ってしまったので、SA特典の自宅使用プログラムでOffice Pro Plusを一個買ってみた。

Home Use Program
https://www.microsofthup.com/hupjp/home.aspx?culture=ja-JP

ボリュームライセンスのOfficeをSA付き契約すると自宅使用プログラムを使って格安に1,400円でOfficeを1契約ぶん使うことができる(本当は1,400円などといわずにタダで使わせてほしい)。ケチな会社だとSA無しの場合もあるので、職場がPro Plusを導入してるからといって必ず使えるわけでもないあたりは注意。

買い方は特に難しくは無くて、よくある会員登録のあるオンラインショップと同じ。

  1. VLSCで管理者がユーザ(従業員)にHUPの招待メールを送信。
  2. ユーザが招待メールを受信したら文中のリンクをクリック。(VLSCで指定したドメインに限る。)
  3. もう一度メールが送信されてユーザを確認。二回目のメールの文中にそのユーザ専用のHUPショッピングサイトの入り口がある。
  4. ショッピングカート方式で品物を購入してクレジットカードで決済。
  5. その場でプロダクトキーの提示とインストーラのダウンロードを行う。
  6. 自宅PCでインストール、ライセンス認証。

ユーザ側の操作でメールが二回送られてくるところが若干手間なのと、1~2の手順がGmailやoutlook.comのフリーメールでは完了できなかったので普段使ってないISPの.ne.jpドメインのメールを使った。

WindowsではPro Plus、MacではHome and Businessらしいが、両方いっぺんに買おうとしたらなぜかエラーになって決済が進まなかったので、今回はWindowsのPro Plusだけにした。フレコミでは「職場と自宅で同じ環境だから生産性が上がる」と在宅でのサービス残業を勧めるブラック感満載のキャッチだが、どうもVL版とは少し違うっぽい。HUPで買えるのは次のページでも分かるとおりFPP版(パッケージ版)のPro Plusてことになっている。職場で使うPro PlusはVL版。

自宅使用プログラムで Office をインストールまたはアンインストールする

「Pro Plusはボリュームライセンス専用」てさんざん書かれてるのに。HUPでインストールしたWordでライセンス情報を表示させたら、さらに意味が分からなくなった。

officehup1

クイック実行形式でインストールされたのはいいとして、いきなりライセンス認証が必要とか警告してて、初期状態では隠れている追加ライセンス情報を表示するとPro Plusのライセンスが通っていることが分かる。Proのライセンスは認証ボタンで認証ウィザードが動くのだが当然のように蹴られる始末。

officehup2

時計を進めて6月にすると「ライセンス無し」になった。この状態でもPro Plusのライセンスは保持されてるので制限モードにはならず、通常通り編集や保存の操作ができる。

どちらの画面でも「Officeの更新プログラム」ボタンがあるから、これがVL版では無くてFPP版であることが分かる。次の画面は以前も出したVL版のExcelのライセンス表示。MSIインストールのVL版はWindows Updateで更新するからここには更新ボタンが無い。つまりHUPで買うOfficeはPro PlusだけどFPP版とかいう超レアなアイテムだってことが分かった。

office2016-VL1

で、FPP版のPro Plusでここにある更新ボタンで更新をかけるとPro Plusが消えて通常のProになった?!?! 起動するたびにライセンス認証ウィザードが出て制限モードのカウントダウン始まる orz

な・ん・な・の・こ・れ!!!

いったん削除して元のHUPのPro Plusインストーラを使ったら元の状態には戻ったけど、更新すると認証が外れるとか意味分かんない。このエディションはレア過ぎて検証してないんだろうか。これ生産性が上がるどころかシス管のサポートが増大するだけじゃない?

デジタルリテラシー CBT

この顔で画像検索したら、「Microsoft デジタル リテラシー カリキュラム」が引っかかった。

avator

Microsoft Digital Literacy Curriculum
https://www.microsoft.com/ja-jp/digitalliteracy/default.aspx

て、これ前にエントリに書いたWindowsボリュームライセンスのSAで特典として提供されてるのと同じだ。

lifestyle.jpg

道路でインラインスケートしながら隣にいるタブレットで映画を見る人とスマホでテキストチャットしつつイヤホンで音楽を聴くとかいう素敵なデジタルライフを紹介するよ!

 

カミソリ レター

スギ薬局のポイントカードを使っていたらシック ハイドロ5プレミアムがDMで届いた。ビッグデータに基づくターゲッティング広告とかいうやつ?

シック ハイドロ5プレミアム
https://www.schick-jp.com/razors/51

5枚刃カミソリで極めた剃り味を実現するんだそー。

いらねー。

こっちはもう十何年もおたくのスーパーツーで十分に満足した剃り味なんだ。

シック スーパーⅡ
https://www.schick-jp.com/razors/series/5

これの替え刃を若干お高いと思いながらもスギ薬局で延々と買い続けていたが、よりによってそのデータを使ってこんな仕打ちをするとは。もうね、今後は替え刃はアマゾンか最安値のネットショップで買うことにする。

そのまま捨てるのもったいないからハイドロ5プレミアムは使ってみた。なめらかな剃り味ってか、なまぬるい剃り味って感じ。で、すみっこがやりにくいから、フリッパーとやらを開くためにいじってたら刃が抜けてすとーんと落ちて洗面台のエッジに強打。パッケージに各部の説明くらい書いといてよ。

2日目にして試用終了…

で、スギ薬局へ行ったついでに替え刃を見てみたんですよ。(←ターゲッティングDMの立案者さん、ここ、ちゃんと効果発揮してます。)

8個入り4000円越え!! 高っっ!!!

2日でオシャカにする可能性があるのに高い。スーパーツーの替え刃(ウルトラ)も値上がりして16個入り3000円軽く超えてるし、このDMターゲットはスーパーツーのユーザーを新製品に誘導してスーパーツーを終了する準備ではないだろうか。賢い消費者はそんな策略には乗らない。

賢い消費者の選択、それは…

両刃ホルダー「ポピュラー」

替え刃のコストだけで年間1万円は変わってくるハズ。使ってみると両刃もそんなに使いにくいものでもない。両刃は封筒に1枚入れて送ることもできるしね。

ハイドロ5の替え刃は高いし、ホルダーはオールプラでチープ。今回のカミソリレターDMで、この替え刃商法の製品がどういう指向のものか十分理解したです。てことでインジェクター、スーパーⅡと長年使ってきたが今月からシックとはさよならだ。

Windows Enterprise を Creators Update してみた。

世間ではWindows 10のCreators Updateが解禁されたとかいって一部で騒いでるけど、待ってても一向に入ってこないのでよく確認したら使ってるのがVL版のWindows 10 Enterpriseだった。

手動で更新アシスタントを使ってみても次の表示。Entreprise版は対応してない。管理者に連絡しろって、だから自分が管理者なんだって。「このPCはWindows10を実行できません」っていう表示もおかしい。Anniversary Update(1607)のWindows10で動かしてるし。

cannotupdate

VLSCでのCreators Update提供は5月1日ってことらしい。でも改善されたWSLが結構便利だから、一刻も早く使いたいし、先にMSDNサブスクライバーで公開されたVL版のEnterprise ISOイメージを使って更新をかける。

ja_windows_10_enterprise_version_1703_updated_march_2017_x64_dvd_10204231.iso をダウンロードしてそのままマウント。勝手にインストーラが動くので更新を開始。

cannotupdate2

今度はインストール準備が進んだ。

cannotupdate3

i5ノートで思ってたより時間がかかったが、終了。

cannotupdate4

MSDNを使えない場合は、評価版のWindows 10 Enterpriseで入手できるISOでも更新できる気がするが面倒なので未確認。

EnterpriseがProやHomeと違うのは自動で更新がかからないという点であって、ISOイメージがあればアップグレードはできる。現在はVLSCで1703も公開されてて通常のVL契約だけでMSDNの契約がなくてもISOイメージをゲット可能。

2017年6月上旬追記

もう一台のドメインコントローラ無しのスタンドアロンで使ってるWin10 Entは6月に入ってからWindows Updateをかけたら勝手に1703になった。そこそこ良いスペックなので更新1時間+クリーンアップ1時間ほどだったが、これが企業の「特定用途向けPC」(低スペック低価格PC→安いだけの日常業務用PCに転用)だったら地獄だろう。

よく分かってない人が出社時、無意識に更新開始すると、半日~1日は仕事にならないと思うのでグループポリシーで自動更新にならないようにするとか、事前に夜間に更新するとかしとかないとヤバい。

 

アンワインド セマンティクス って何?

Visual Studio でコマンドプロンプトのCLを使って、最初に受ける洗礼。

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\include\xlocale(314):
warning C4530: C++ 例外処理を使っていますが、アンワインド セマンティクスは有効にはなりません。/EHsc を指定してください。

意味が分からない。

ヤフー知恵袋とかで調べてみたが、/EHscつければ解決とかワーニングとおなじこと言ってドヤ顔してるの以外、何言ってるのかぜんぜん分からんし。あんたら最高、天才。

Q:「アンワインドセマンティックス」とはどういう意味ですか?教えてください。→A:メッセージ読めないの?バカなの?  “/EHsc”付ければおk!
http://qa.itmedia.co.jp/qa4559129.html
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q10119567590
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1056479490

日本語が理解できる大半の人はcl に /EHscを追加すればいいと分かるし、実際それが正解だけど、じゃあC++例外? アンワインド セマンティックス?  が有効? 何それ、はぁ?? てなるわ。えぴすてーめー様も回答が超小出しでセマンティクスが全然かみ合ってないし。

セマンティクスて何、て調べるとどうもプログラムの上では「中身」とか「内容」とか「意味」ってことらしい。

http://www.itmedia.co.jp/enterprise/0108/20/01082088.html

じゃあ、「アンワインド セマンティクス(unwind semantics)」って何やねん? で調べても最初に出てきたエラーが解決しませんとかいうしょうもない質問にlongjmpするばかりで、肝心なところが出てこない。

※実際のところMSDNで/EHscのオプションの説明を見ると例外処理とデストラクタが呼ばれる呼ばれないの問題であることはすぐに分かるので、最初のヤフー知恵袋の回答はいい線行ってるが、この言い回しでは質問者には分からないでしょうね。ここでは「アンワインド セマンティクス」というキーワード自体が意味不明であることにフォーカスする。

次のコード、最新のIoTデバイス「コタツみかん取得装置デバイス」に組み込まれる予定のMikanオブジェクトはコンストラクタで「自動的にミカンを持ってくる。」、デストラクタで「自動的にミカンを返却する。」が実装されている。現時点でMikanオブジェクトはPeelAndEat(剥いて食す)メソッドを実装していないので持ってきたミカンは必ず返さなければならない。Mikanの返却を忘れた場合、それはリソースリークを意味する。

#include 

int main(void)
{
	class Mikan {
	public:
		Mikan() { puts("Bring Mikan"); }
		~Mikan() { puts("Takeback Mikan"); }
	};

	puts("Start.");

	try {
		Mikan AmaiMikan;	// Mikanの自動インスタンスAmaiMikanを生成
		throw NULL;		// ぬるぽ
	}
	catch(...) {
		puts("Catch.");		// ガッ
	}

	puts("End.");
	return 0;
}

CLのオプション/EHsが有るときと無いときの違いを見てみる。実行環境は最新のVisual Studio 2017。

▼あるとき

C:\>cl /EHs sem.cpp && sem
Microsoft(R) C/C++ Optimizing Compiler Version 19.10.25019 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

sem.cpp
Microsoft (R) Incremental Linker Version 14.10.25019.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:sem.exe
sem.obj
Start.
Bring Mikan	←みかん持ってくる。
Takeback Mikan	←みかん返す。
Catch.		←例外処理中。
End.		←終了。

try文中でMikanオブジェクトのインスタンスAmaiMikanが自動的に生成され、コンストラクタが呼ばれ、その直後に例外をthrowして、tryスコープから外れる、catchのブロックに入る前にAmaiMikanのデストラクタが呼ばれている。当たり前といえば当たり前の動作。

▼ないとき

C:\>cl sem.cpp && sem
Microsoft(R) C/C++ Optimizing Compiler Version 19.10.25019 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.

sem.cpp
sem.cpp(14): warning C4530: C++ 例外処理を使っていますが、アンワインド セマンティクスは有効にはなりません。/EHsc を指定 してください。
Microsoft (R) Incremental Linker Version 14.10.25019.0
Copyright (C) Microsoft Corporation.  All rights reserved.

/out:sem.exe
sem.obj
Start.
Bring Mikan	←みかん持ってくる。
Catch.		←例外処理中。
End.		←終了、みかん返却されていない。

例のワーニングC4530が出ている。今度はtryブロックから出ても、プログラム本体が終了してもAmaiMikanのデストラクタは呼ばれずに終了している。これは期待するtry ~ catchの動作ではない。

この動作では自動変数のAmaiMikan自体はスコープから外れるときにスタックメモリ(スタックフレーム)から削除(フレームのアンワインド)されるが、その処理中にはデストラクタが呼ばれず、クリーンアップを行う処理(=アンワインド セマンティクス)がされない。

最初に書いたとおりセマンティックス=内容てことだったから、「アンワインド セマンティクス」を雑に訳すと「内容を巻き戻す」。さっきのコードの動作が分かると、分かった気がする。オプション/EHがException Handlingの略だってことも分かる。

もうちょっと違う言い方(余計に分かりにくく)すると、

・ビデオテープを再生している途中で、あるところに戻りたいので巻き戻しをする。

  • 巻き戻す内容を見ながら戻りたいところに戻る。
    →セマンティクス(内容的に必要な処理(例えば消去)をしながら)に、アンワインド(巻き戻す)。
    →/EHsオプション有り、普通のC++ try~catch例外処理。
    .
  • 再生時間表示だけを見て、戻りたいところに戻る。
    →セマンティクスな処理をせずに(中身に干渉せずに)、アンワインド。(巻き戻すだけ)
    →/EHsオプション無し、MS独自仕様な例外処理の動作。
    .

CLが/EHオプション無しでこのような動作になるのはおそらく歴史的経緯でCLコマンドの後方互換性(初期のMS-C/C++はC++例外処理が実装されていなかった)によるものだと考えられるので、try~catchでまともな動作をさせたければ単純に言われたとおり/EHscを付けてあげるのが正解。

久しぶりにプログラムの細かい内容になった気がする。こんなことはプログラマでも知らない人がわりといるのに、自分のような非プログラマが知る必要はまず無い。

スタックフレームの理解とかは気が向いたら追記予定。