« 2018年12月 | トップページ | 2019年2月 »

2019年1月31日 (木)

百均でVRゴーグルなど購入してみた

久々に近所のセリアに行ったら、ついつい買ってしまいました、スマホグッズ。

Img_2809

内、ひとつは新顔です。VRという名前に惹かれて、使い道も考えずに思わず購入。

Img_2810

このスマホクリップはもう何度も買ったやつです。以前買ったやつが壊れたので、購入。

時々使いたくなるんです、こういう感じに。動画を見るときに便利です。

Img_2811

初めて買ったのですが、このクリップのようなブツは

Img_2812

こうする奴です。

iPhone 7以降のApple純正のイヤホンって、巻取りケースが無くなってしまったんですよね。おかげで、こいつを収納するものがない。

引き出しの中に入れていると、勝手に何かと絡みついていざという時に取り出せない。

というわけで、これを買ったというわけです。

また、先日買ったヴィレッジヴァンガードの福袋についていたカナル式のイヤホンも巻く奴がないので、引き出しの中で踊り狂ってあらゆるものに絡みついてます。このため、2つ購入したのですが・・・

Img_2814

いきなり、これです。

磁石が取れちゃいました。

溝に磁石を突っ込んだら直ったんですが、案外簡単に壊れるようです。ちょっとこのコードばさみ、失敗だったかな。

Img_2815

さて、いよいよ一番気になる「VRゴーグル」です。

まるでパタリロに出てくるタマネギ部隊の一員のような顔をしてますが、これを組み立てていきます。

Img_2816

・・・完了です。袋に書かれた通り組めば、あっさりと作れます。

Img_2819

iPhone 7 Plusを突っ込んで適当なVRアプリを使ってみましたが、問題なく使用可能。

以前にも似たようなものを買いましたが、あれよりも中のiPhoneを出し入れしやすく、使い勝手がいいです。

ゴーグルのレンズ間の穴は、鼻をよけるためのようですが、あの穴から指を突っ込めば画面操作が可能。また、本体底面にも操作用の穴があります(ただし、右のみ)。

Img_2820

たった108円でいいことづくめなVRゴーグルですが、一つだけ難点が。

この真ん中の仕切り板。最初から曲がっていたため、くの字型に曲がっております。

おかげで、仕切りがうまく機能せず、VR画像がおかしくなってしまいました。このままだと、右目に、左目の画像が少し映り込んでしまいます。

Img_2821

仕方がないので、こんな感じに爪楊枝で補強。

これでようやく、画像が安定しました。

VRアプリを買ってしまったものの、それを使うゴーグルがないというときは、セリアに走ればこういうものがあります。よほど使うようになったら、本格的な奴を買えばいいかなと思います。

SAMONIC 3D VRゴーグル 「イヤホン、Bluetoothコントローラ、日本語説明書付属」 (ブラック)

2019年1月30日 (水)

床に置けてタブレットも支えられるスタンド

スマホやタブレットのスタンドは数多ありますが、このスタンドは直接床において使えます。

ゴロゴロしながら使いたい。 iPadやスマホにも使える床置きタイプのロングスタンド | ライフハッカー[日本版]

38~175cmまで高さ調整可能で、上部は70cmくらいは前に張り出せる仕様のようです。対応するのは、3.5~10.6インチまでのスマホ・タブレット。

この手のスタンドは、スマホスタンドの反対側がクリップになってたりするんですよね。このため、クリップで固定するところがないと使えないという不便なものが多かったんですが、こいつはしっかりと床に置くだけで使えます。

重量が5.85kgだそうですが、その重さのほとんどが下のスタンド部分なんでしょうね。それで倒れ防止をしているものと思われます。

個人的には、ちょっと欲しいですね。お値段は4000円弱。でも、今はどちらかというとMacBook Airをよく使うので、そちらをささえられるスタンドなりテーブルがあると便利なんですが。

IPAD床置きスタンド、38cm-175cm高さ調節可能、360°回転枕元で携帯テレビ観賞用3.5インチ~10.6インチタブレットPC、スマホ共通スタンドクリップ (白)

2019年1月29日 (火)

Apple Watch 4の心電図機能でまた命が救われる

心電図機能がリリースされたアメリカでは、こういうニュースが徐々に聞かれ始めています。

Apple Watchがまた命を救う!妻の感謝をティム・クックがリツイート | カミアプ | AppleのニュースやIT系の情報をお届け

またApple Watch 4の心電図機能により心房細動が検知されて、命が助かったという話です。

そのツイートを、Appleのティム クックCEOがリツイートしています。曰く、「このような話が、Appleのモチベーションになっている」と。

最近のiPhoneはやや迷走状態ですが、Apple Watchはその目的をしっかり果たしてますね。ジョブス氏の病気をきっかけに開発されたといわれるApple Watchですが、健康管理のデバイスとしての地位を確立しつつあります。

私も毎日、Apple Watchつけてます。

今のところ異常検知などはないですけど、心拍数は記録され続けており、安心感はありますね。

ですが、4の心電図機能、ここ日本でリリースされるのは一体、何年後のことなんでしょう?

医療機器の認可って、時間がかかるようです。ていうか、医療機器の認可っているんでしょうか?それ自身で医療行為をするわけではなく、ただ参考データを取るというだけなら、別に認可なしでリリースできないんですかね?

その間にも、この日本で救われたはずの命が失われるとするならば、実に嘆かわしいことです。何とかならんですかね?

デメリットがないのなら、早くリリースできるようにしていただきたいですね。

Apple?Watch Series?4(GPSモデル)- 40mmゴールドアルミニウムケースとピンクサンドスポーツループ

2019年1月28日 (月)

Raspberry PiとMacBook Airにディープラーニング環境(TensorFlow+Keras)構築

表題の通りです。以前からやろうと思ってやれてなかったことを、ようやくやり終えました。

Raspberry PiとMacBook Airに、TensorFlowとKeras、その他OpenCVやらscikit-learn、numpy等をインストールしました。

参考にしたのは、それぞれこちらのサイト。

【Raspberry Pi】

Raspberry Pi への Tensorflow と Keras のインストールコマンド - Qiita

【MacBook Air】

Python3 TensorFlow for Mac 環境構築 - Qiita

上のサイトにある通りやれば、上手くいく・・・と言いたいところですが、これが全然うまくいきませんでした。特にRaspberry Piは、試行錯誤を繰り返します。

本来ならばここにその手順を書きたいところなんですが、これがあまりに行き当たりばったりやりすぎて、すでに手順をたどれません。

このため、このときの「取り組み姿勢」のようなものだけ、書き残しておきたいと思います。

どちらもそうですが、インストール中や、実際に作ったコードを動かしたときに、エラーが出ました。

で、やったことは「エラーの最終行(ImportError:~)を丸々コピペしてググる」という荒業。

それを繰り返すと、なんとか答えにたどり着きました。

ただ、MacBook Airの場合はそれでもうまくいかないことが一つあって、「.bash_profile」を作らなきゃいけないというところだけはこれではうまく探れませんでした。

pyenvを入れてpython 3.6を導入したんですが、

結論を言うと、pyenvでPythonのデフォルトを2.7から3.6に変えるには.bash_profileに環境変数を書かなきゃいけないんですけど、これだけは、エラーからたどってはいけませんでしたね。「Mac Python デフォルト 変更」などのキーワードを散々ググって探りました。

また、Raspberry Piですが、上には書かれてませんけど「Raspbianの最新版(Debianのバージョンが9)」であることが必須です。これを知らずに、昨年くらいのRaspbian(バージョンは8)で一生懸命トライして、上手くいきませんでした。

以下から、最新版をダウンロードしておきます。

Download Raspbian for Raspberry Pi

私は「Raspbian Stretch with desktop and recommended software」てやつを落としましたが、上手く動きました。最低限の環境でもいいかもしれません。

まあ、苦労した甲斐もあり、おかげさまでRaspberry Piでも

Raspikeras01

MacBook Airでも

Mackeras01

先日TenforFlowの画像認識プログラムをKerasに書き換えてみた: EeePCの軌跡で紹介したTensorFlow+Kerasのコードが動くようになりました。

やれやれです。

もうちょっと楽な方法があったかもしれませんが、この2つだけはストレートにうまくいくサイトがなかったですね。

とりあえず、Raspberry Piはエッジコンピューティング端末として、MacBook Airはコードのお試し環境&持ち出しディープラーニング端末として、有効に使えそうです。

それにしても、ずいぶんと久しぶりに触りました、Raspberry Pi。

MacBook Airも、メモアプリ以外を久しぶりにガンガン使うことになりそうです。

これなら、そろそろRaspberry Pi 3B+を買ってもいいかもしれませんね。

PythonとKerasによるディープラーニング

2019年1月27日 (日)

Siriが命を救う!ジープで事故を起こした男性の声に反応してiPhoneが通報

こういう話を聞いていると「ねぇ、Siri」を有効にしておいた方がいいのかなって思うこともありますね。

ジープで事故り動けなくなった男性、iPhoneのSiriに命を救われたとの報道 - Engadget Japanese

ジープで事故を起こし、身体の80%がマヒして動けなくなった男性が、iPhoneのSiriを使い911(日本でいうところの119番)に通報して、なんとか救出されたということです。

事故現場は気温が低く、低体温症になっていたかもしれないとのこと。危うく助かったようです。

日本の場合だと、地震などで閉じ込められるという可能性があります。このとき、「ねえSiri」が使えると、助かることもあるかもしれないってことですよね。この機能、案外侮れません。

Apple Watchだけじゃないですね。iPhoneも人の命を救うことがあるようです。まあ、同じようにOK Googleでも行けるってことでしょうけど。

(SIMフリー) MQ7A2J/A iPhone 8 64GB ゴールド(国内版)

2019年1月26日 (土)

AI+RPAによるプレスリリース記事自動作成ツール

プレスリリースを自動で生成できるRPAツール・・・いや、こういう記事って、ロボット化できるものなの?

日本初!RPAでプレスリリース記事を自動作成 記事作成時間の8割削減を実現 - CNET Japan

多少の疑問を抱かずにはおられませんが、そういうツールが開発されたようです。

ただし、よく読むとAIと併用しているっぽいですね。ある程度の記事は機械学習的なものが作成し、それをもとに下書きを作って、人間が最後の仕上げをする。

よく考えたら、プレスリリースってわりと決まった文言が使われてるようにも思いますね。やっぱり、自動化しやすいんでしょうかね?

うーん、これさえあれば、このブログ記事ももっと簡単に作れるってことなんですかね?いや、それをやったら、何がしたいのか分からなくなりますけど。

(予約特典付き)いちばんやさしいRPAの教本 人気講師が教える現場のための業務自動化ノウハウ (「いちばんやさしい教本」シリーズ)

2019年1月25日 (金)

Amazon AlexaやGoogle Homeをハックする横取りガジェット「Project Alias」

Amazon EchoやGoogle Homeを起動するときは「アレクサ!」「オッケーグーグル!」で、これを変えることができませんが、なんとこの起動時のキーワードを変更できるというハッキングガジェットが登場です。

Amazon EchoやGoogle Homeに「寄生」させると好きな言葉で起動できるようになる「Project Alias」 - GIGAZINE

「Project Alias」という名前のこのガジェット、Google Homeなどのスマートスピーカーの上にかぶせて、起動する際のキーワードを変えてしまうというものです。

中はRaspberry Piとマイク、スピーカーからなり、マイクには常にホワイトノイズを流して通常の起動音を阻害するようにしてるらしいです。

で、決められたキーワード(例えば「エイリアス!」など)を叫ぶと、スマートスピーカーが使えるようになるという代物です。

が、上からかぶせているため、マイクの反応はちょっと鈍くなるのが欠点。

そういえば以前、テレビ番組で「アレクサ!○○買って!」というデモを放送したら、Alexaのスマートスピーカーを設置している家庭で一斉にその○○が注文されてしまったという冗談のような話がありましたね。

これをつけてしまえば、そういう誤作動が減るかもしれません。

それ以外にも、気に入ったキーワードで起動させたいという欲求を満たせるという利点がありますね。

なお、この「Project Alias」は製品ではなく、オープンソースとして公開されています。ソースはGithubにあるそうです。

Project Alias - Github

気になる方は、ぜひ自作にて。

Echo Dot  第3世代 (Newモデル) - スマートスピーカー with Alexa、チャコール

2019年1月24日 (木)

NVIDIAが台所用ロボットを開発中

これができると、家事がかなり楽になって重宝しそうです。

NVIDIAがロボット研究所を設立。人とともに台所ではたらくロボ「キッチンマニピュレータ」を研究開発中 - Engadget Japanese

NVIDIAがロボット研究所を設立し、人と共に働く台所用ロボットを開発しているとのことです。

片腕なので、どこまでできるのかは疑問ですね。下の動画を見る限り、引き出しを開けてものを出し入れするだけのようにも見えますけど、皿を食洗器にセットしてくれるだけでも相当嬉しいですよね。台所どころか、吉野家あたりでも活躍しそうです。

今後、ますますこういうピッキング系のロボットが飛躍的に発達するかもしれません。面倒くさい労働の大半が、ロボットに置き換わるのは時間の問題かもしれません。

ちなみに、私がとあるところで書いている小説では、この両腕版を登場させてます。

宇宙艦隊司令部付の雑用係オルガレッタは恐ろしいほどよく当たる占い師

数百年先ならば、こんなロボットは当たり前になっているのでしょうね。人類が生き残っていればの話ですが。

サインスマート 6自由度 ロボットアーム DIYキット For Arduino UNO MEGA250 電子自作

2019年1月23日 (水)

ここは異世界!?なお店”LARP Gear”

ネットで偶然知ったのですが、こんなお店があるそうです。

LARP Gear 日本で最初のラープグッズ販売店です

Larp01

”LARP Gear”というお店。日本初のLARPグッズ販売店だそうです。

LARPとは何ぞや!?ですが、上のサイトによれば「ライブアクションロールプレイ」の略だそうです。つまり、ロールプレイングゲームの世界をリアルに楽しんでしまおうというものだそうで。

と、いうことで、上のサイトではまるで異世界の武器屋のようなものが売られています。

皮製品に金属製品、武器、衣装、アクセサリ・・・ざっと覗いてみましたが、3~5万円ほどあれば、勇者か剣闘士、魔術師な姿になれそうです。

もし、今にも異世界に召喚されそうだと予感されている方が見えましたら、ここで衣装だけでも買っておくと、あちらで怪しまれずに済みそうです。武器は・・・さすがに、実戦向きなものをそろえているわけではないので、異世界では役に立ちませんね。もちろん、リアル世界ならば勇者の雰囲気をバンバン出せそうです。

コスプレというより、純粋に世界観を楽しむためのアイテムショップなようですね。驚いたことにこのお店、愛知県瀬戸市にあります。うちから車で40分もあれば着きそうなところ。案外近くに、面白い店がありました。驚きです。

Swordsaxe FoamスチームパンクSky Pirate Boarding AxeコスプレLARP Sword

2019年1月22日 (火)

地震の時に自動的にシェルターになるベッド

ちょっと面白いものを見つけたので、紹介。

地震が起きると、自動的にシェルターになるベッドだそうです。

動画を見てもらうと分かりますが、地震が起きると自動的に下に落ちて、身体が保護されるという仕組みです。

中には食料も備蓄できるので、閉じ込められても救助を待ち続けることが可能。もちろん、落下物などからも守ってくれます。

少々乱暴なシェルターのような気もします。間違って、けがをしたりしないか、あるいは、入っちゃったはいいけど出られるのか、など、気になる点が盛りだくさんです。

でも、地震では確かに落下物による死者が多いのは事実。これなら身を守れますね。

ついでに言えば、水に浮くとか、10メートル沈んでも耐えられるとかあれば、津波にも備えられそうですね。さすがにそれは無理か。

防災セット 地震対策30点避難セット 避難生活で必要な防災グッズをセットした非常持出袋

2019年1月21日 (月)

今年前半に新型のiPad miniとiPad登場か!?

iPad mini 5(仮)の噂と背面パネルの画像が出回ってますが、それに加えてiPadの新型の噂まで出てきました。

新情報続々!iPad mini5の他に新iPadも3月にも発表される!かも | カミアプ | AppleのニュースやIT系の情報をお届け

今年前半のうちに、新型のiPadとiPad miniが発売される可能性が出てきたようです。

iPad miniに至ってはもう4年もアップデートがないようなので、そろそろ新型の登場が期待されます。

値段は、どうなるんでしょうね?単なるプロセッサのアップデートなら、今のiPadの37800円(税抜き)と同じくらいだと思いますけど。iPad miniなら、34800円くらいですかね?

Apple Pencil対応なら、なおいいんですけどね。もう現行機を買っちゃいましたけど、私。でもApple Pencilをお試ししたいという向きには歓迎されると思いますね。

昨年は高級路線に走りすぎて、かえって台数減を招いたAppleですが、今年は廉価機を充実してくれるんでしょうかね?できれば、iPhoneにもそういう波があるとうれしいんですけど。

Apple iPad (Wi-Fi, 32GB) - シルバー

2019年1月20日 (日)

iPhone XRのSIMロック解除済み未使用品がお買い得

やっぱり、売れてないんでしょうかね?

iPhone XRが「日本最安クラス」で店頭販売中、SIMロック解除済みの未使用品 (取材中に見つけた○○なもの) - AKIBA PC Hotline!

iPhone XRのキャリア版(SIMロック解除済み)の未使用品が、Apple Storeの新品より1万円以上安く売られているようです。

64GBモデルが77800円で、128GBモデルが87800円。Apple Storeだとそれぞれ91584円、98064円なので、安いことは安いですね。

しかし、この時期にこういう未使用品が出ること自体、異例中の異例。あのAppleの黒歴史であるiPhone 5cでもなかったと思います。

指紋認証が搭載されていないということが、こんなに響くんですね。それにしてもまだ高いと感じてしまいます。せめて、iPhone 8の最新プロセッサ版を出すことはできないんでしょうか?

国内版SIMフリー Apple iPhone XR 64GB Red レッド MT062J/A A2106

2019年1月19日 (土)

以前買ったスマホ手袋がiPhone Xで使えない件

寒い季節、手袋をしたままスマホを使うこと、ありますよね。

Img_2808

我が家には3つのスマホ対応手袋があります。右から順に古い手袋で、一番右のは百均で買った手袋、真ん中はユニクロ、そして一番左は、どこかで買った手袋です。

どう見ても一番左が良さげな手袋。ちなみに、3つともiPhone SEでは問題なく使えてます。

が、これをiPhone Xで使うと、反応したりしなかったり。ほとんど使い物になりません。

Img_2176

まずは一番左のやつ。

多分、これが一番まともな奴(?)のはずですが、全然反応しません。

がさがさと指を横に動かしても、まるで反応せず。

Img_2175

次に、ユニクロの手袋です。

2年以上前にユニクロのスマホ手袋買ってiPhone 7 Plusで使ってみた: EeePCの軌跡で紹介した手袋。iPhone 7 Plusのホームボタン対応手袋ということで買ったやつです。

こいつは爪先を当てるように指を立ててやると、何とか反応します。が、そんなスタイルでは使いづらいことこの上なし。

Img_2173

意外にマシだったのは、この百均の手袋。

半分くらいの確率で反応します。

でも、これって・・・この手袋、わりと毛糸間の隙間が大きいので、もしかしたら皮膚が触れているだけなのかもしれません。

というわけで、iPhone Xでまともに使えるスマホ手袋がないことが今さら判明しました。

今売ってる手袋なら、問題なく使えるんでしょうか・・・

(ZakkaRico)スマホ スマートフォン iphone 対応 フカフカ裏起毛加工 好感度タッチ 液晶タッチ対応手袋 (フリーサイズ) (ノルディック柄 灰色)

2019年1月18日 (金)

Apple Watch 4の心電図機能はどうやって有効化されているか?

今のところ、アメリカおよびアメリカ領のみで有効化されているApple Watch 4の心電図機能。

しかし、一体どうやってそのApple Watch 4をつけている人が”心電図機能有効”な場所にいると判断しているのか?

その謎が、解明されたようです。

「Apple Watch Series 4」のECG心電図機能の有効化の条件が判明 - Vintage Computerでも取扱開始 | 気になる、記になる…

実に単純な話で、米国で販売されているモデルなら、心電図機能が有効化されているようです。

このため、日本でもこの心電図機能を使いたければ、アメリカ国内版のApple Watch Series 4 GPS版を買えば、つかえるようになるとのこと(Cellular版は技適未取得)。

なんとも短絡的というか、当然というか、蓋を開けてみればそりゃそうですよねという結論です。

しかし、日本国内ではどうやって手に入れるんでしょう?Expansysのは多分香港版あたりでしょうし・・・手に入れたいという方は、輸入代行辺りを使うしか手がないかもしれません。

Tech Express デュアルUSB充電スタンドクレードルドックホルダポストApple iPhoneとiWatchシリーズ4/3 / 2/1 / iPhone X/Xs / Xs Max / 8/8 Plus / 7/7 Plus / 6S / 6S / 5 / SE Plus用

2019年1月17日 (木)

アウトランのミニチュア版がすごい

いわゆるエミュレータ+Raspberry Piを使った工作ですが、これがなかなかの完成度で、ついつい欲しくなってしまいます。

セガのアウトランですが、ハンドルまで備わった本格的なミニチュア版アーケードです。

すでに1年半以上前に、こんなものが作られていたんですね。なかなか感動ものです。

できれば、アフターバーナーやスペースハリアーあたりも再現してくれると、うれしいですね。

アウトラン オリジナルサウンドトラック Vol.1

2019年1月16日 (水)

次期iPod touchが開発中!?

長らくアップデートされていないiPad miniとiPod touchですが、前者については最近、噂が流れてますよね。

これに加えて、iPod touchの新型も出るらしいという噂です。

次世代iPod touchが開発中? - ITmedia NEWS

CES 2019に出展していた業者からの情報なので、どこまで信ぴょう性があるのかわかりませんけど、最も安いiOS端末として、まだまだ存在意義はありそうです。

私も、最初は第2世代iPod touchから始めましたからね、iOSは。その後、iPad、iPhoneとステップアップして今に至ります。

iPhoneがだんだんと高額化して、手に届かない存在となりつつある中、こうした安い端末の方も整備を進めてほしいものです。でも、本当に出るんでしょうかね・・・

Apple iPod touch 32GB 第6世代 2015年モデル シルバー MKHX2J/A

2019年1月15日 (火)

タブレット・スマホでディープラーニング!?ができる環境

ちょっと、覚え書きとして、記事にします。

iPhoneやiPadで深層学習をさせるなんて言うと、正気の沙汰ではないと思われそうですが(そんなことないか)。

やる方法は、あるそうです。別に、iPadやiPhoneに限らず、ですが。

もちろん、スマホやタブレットのCPUではとても使い物にはなりません。

まあ、結論から言うと、クラウドを使います。

Google Colaboratoryでタブレット・スマホからプログラミングや機械学習ができるようになっていた話 - Qiita

Google Golaboratoryは、iOSのSafariは対象外のようですが、この記事によると、どうも動いてしまうようです。

この記事中では、iPad Air 2を使ってるようです。お世辞にも、高性能なCPUを搭載しているとは言い難い端末ですね。ですが、MNISTの学習もできちゃいます。

クラウドなので、利用料がかかってしまいますが、その分高性能な学習環境も手に入れられるというわけです。

Raspberry Piなどをエッジ端末として使うとしても、学習環境はそこそこのものを利用したい。

そんなときには、このクラウド環境が役立つかもしれませんね。

問題は、特に企業などでクラウドを自由に使わせてもらえるかどうか、ですけどね。ここのハードルが高いという会社の話は、たくさん聞きます。でもそろそろ、そんなこと言ってる時代じゃないと思うんですけどね・・・せめて、Azureくらい使わせてくれないのかなぁと。

クラウドエンジニア養成読本[クラウドを武器にするための知識&実例満載! ] (Software Design plusシリーズ)

2019年1月14日 (月)

Alexaに宿題の答えを聞く息子に激怒する親の動画

まあ、こういう時代に突入しちゃったということですね。

その手があったか…!スマートスピーカーに宿題の答えを聞く少年が撮影される | FUNDO

Alexaに分からない算数の問題を聞いて答えさせる息子を、母親が怒るという動画が話題になってます。

この息子さん、Alexaに向かって「5-3,please?」って聞いてます。すると、直に応えちゃうAlexa。

それを聞いたお母さんらしき人が「ボーォイ!?」と叫ぶところで動画が終わっています。その後は、こっぴどく怒られたのでしょうか?この息子さんの行方が、心配です。

実はうちの次男もよくGoogle Home miniで遊んでいます。宿題の答えというより、めちゃくちゃな算数の問題を出し、答えさせて喜んでいるという感じでしたが。電卓にめちゃくちゃな計算をさせて喜ぶ子供と、やってることは変わりません。

スマートスピーカーにはこういう話がある一方、以前私のブログ記事(Google Homeの全424個のアプリ一覧: EeePCの軌跡)でも紹介した「ぐるぐるたしざん」のようなアプリもありますからね。使い方次第かと。

それにしても、ある意味賢いですね、この息子さん。

ただし、5-3を答えられないようでは、先が思いやられますね。せめてもうちょっと難しい問題をぶつけられるくらいには成長して欲しいものです。

Echo Dot  第3世代 (Newモデル) - スマートスピーカー with Alexa、チャコール

2019年1月13日 (日)

今年のiPhoneはUSB-C/ノッチ小/画面内Touch IDか!?

iPhoneの売れ行きが芳しくなくて、この年末年始に業績の下方修正を発表し、Appleどころか世界の市場の株価が大きく下がりましたね。

まあ、3機種も出しておいてヒット製品無しという惨憺たる結果ですから、仕方ありませんね。

しかし、今年出るiPhoneは一体、どうなってしまうのか!?Appleとしても、今度ばかりは外せません。

早速、予想が出てますね。

今年の新iPhoneはLightningからUSB-Cに移行、ノッチの縮小、ディスプレイ内Touch IDが搭載される? | 面白いアプリ・iPhone最新情報ならmeeti【ミートアイ】

今年のiPhoneのキーワードは3つ。USB-Cコネクタの採用、ノッチの小型化、画面内Touch IDの搭載、だそうです。

ノッチの縮小はともかく、あとの2つはどうでしょうね?本当にやるんでしょうか?

もっとも可能性が高いのは、USB-Cコネクタでしょうね。なにせ、iPad Proではもうやってます。今後のことを思えば、USB-Cで統一してくる可能性は高いと思われます。

画面内Touch IDはどうでしょうね。意見の分かれるところですが、ユーザーとしては要望の高いアイテムです。

なにせ、Face IDの使い勝手の悪さには閉口してしまいます。iPhone X系を買って後悔した人、私以外にもいるんじゃないかと思いますね。

しかし、何よりも求められるのは、やはり低価格化ではないでしょうか?

昨年のApple製品は、全体的に価格が上昇傾向にあります。

特にiPhoneは10万円オーバー、携帯電話の分割は審査に引っかかってできなかったという人が続出したといいます。

いくらなんでも、10万円はやりすぎ。ハイエンド機でも8万円台にはとどめてほしいものです。以前は600ドル台だったわけですし、いつの間にか1000ドル超になってしまいました。何を考えているのやら。

Touch IDの復活と、今のiPhone XR並みの価格ならば、今年は買ってもいいかなぁと思いますね。

でもまあ、あえて買わなくてもどうにかなってるので、今年も見送る可能性は高いです。

こういう記事もあることですし。

iPhoneの販売落ち込みは、アップルと消費者の両方にとって「朗報」かもしれない|WIRED.jp

そうなんですよね。iPhoneの長寿命化が進んでますよね。

端末そのものより、他のサービスの充実を主軸にした方がいいかもしれません。あるいは、Apple Watchのような付属機器的なもので付加価値をつけ、iPhoneそのものの機能アップは控えるのが正しいような気もします。

【国内版SIMフリー】Apple iPhone8 64GB Space Gray 64GB MQ782J/A

2019年1月12日 (土)

CES2019で4TBのUSBメモリ登場

年始恒例のCES 2019が開かれてますが、曲がるスマホ、下からにゅにゅっと生えてくるテレビも驚きですが、私個人としてはこれが一番気になりました。

このサイズで4TBなのぉ……ってなるUSBメモリ #CES2019 | ギズモード・ジャパン

4TBのUSBメモリです。

端子側はUSB-C端子。そう考えるとこのメモリ、結構小さいです。

何が驚きって、この大きさで2TBのHDDが2台分です。値段次第ですが、これでバックアップを取ればいいんじゃないかと。

なお、発売等は未定なようです。多分、結構お高いのではないかと思いますね。普及価格まで下がるのが待ち遠しいところ。

個人PCのバックアップって、案外取られていない方が多いと思われますが、カメラやスマホで取った写真や動画などを保存していても、ある日突然HDDが壊れて・・・なんてことになったら、目も当てられません。

バックアップメディアとして、個人的には期待したいです。

SanDisk USBメモリー 256GB Cruzer Glide USB3.0対応 超高速 [並行輸入品]

2019年1月11日 (金)

VAIO Phoneの未使用品が8888円で大量販売中

出た当時は、かなり悪名をとどろかせたVAIO Phone。

2015年に登場し、当時5万円ほどしましたけど、3万円ほどのスマホに模様と箱を買えただけというのがばれて、かなり炎上した記憶です。

そんな懐かしの(?)スマホの未使用品が、なんとイオシスで8888円にて大量販売中だそうです。

ASCII.jp:年末年始で1000台売れた!? 初代「VAIO Phone」の未使用品が9000円弱

4コアのSnapdragon 410に、2GBメモリ、Android 5.0という、かろうじてPokemon GOが動くスペックのスマホ。

上の記事が書かれたときは、すでに1000台売れて、まだ2000台の在庫があるとされてましたから、まだ手に入りそうです。

2015年といえば、iPhoneでいえば6/6 Plusから6s/6s Plusが発売された時期。それくらいの端末と考えると、結構古いですね。

でも、Android 5.0ってまだ使えますよね。うちのTONE M15も5.1ですが、わりといろいろなアプリが使えます。9000円程度の端末と思えば、かなりお買い得ですよね。

14日(祝)までの特価らしいので、手に入れたい方はお早めに。

SIMフリースマートフォン VAIO Phone VA-10J 日本通信

2019年1月10日 (木)

いざ出陣!?なほら貝型ペットボトルケース

これはいい発想ですね。

吹いてる?飲んでる! ほら貝ペットボトルケース│YOU+MORE!│フェリシモ

ほら貝の形をした、ペットボトルケースです。

これが一体、どこがおもしろいのかと言えば、このケースをつけたペットボトル飲料を飲むと、まるでほら貝を吹いているような格好になるところ、でしょうか。

街中の公園でこれを使ったら、注目されること間違いなしです。

この辺りだと、名古屋城や岡崎城の公園で使うと、注目の的ですね。もっとも、だから何だという姿かもしれませんが。

そういえば、以前名古屋城に行った際に、鉄砲隊の人達が実際に火縄銃を打つという実演をやってました。

春の連休中でしたが、かなり暑い日。熱中症予防のためにも、何か飲み物を持っていて欲しいところでしたが、甲冑姿でペットボトルは、ちょっと違和感があります。

これを使えば、違和感なし。むしろ雰囲気に、ジャストフィット!

戦国時代系のイベントをやる人には、重宝しそうなペットボトルケースかもしれませんね。

ところで、Amazonで本物のほら貝の値段を調べてみたら・・・4~15万円ほどします!そんなに高いの!?

ほら貝(特大)40cm

2019年1月 9日 (水)

写真から人物の実を切り取ってくれるサイト”remove.bg”

もう少し早くこのサイトの存在を知っていれば、年賀状に間に合ったのに・・・

写真から、人物のみを切り出すというサイトがあるということで

雑コラを加速させるポテンシャル。自動で人物を切り抜いてくれる「remove.bg」 | ギズモード・ジャパン

記事を読むと、これは便利そうだということで、早速、試してみました。

Rmbg01

まずは後ろ姿ですが、長男の方は認識されましたね。次男は、しゃがんでいるのが悪いのか、認識されず。

Rmbg02

クリスマスツリー前の記念撮影です。

次男の頭が半分以上吹っ飛びましたが、それを除けば大成功。

意外と、使えますね。時々認識しませんが、概ね大丈夫そうです。

年賀状に張り付ける画像で、人物部分のみを切り出して使うことをよくやってるんですが、結構手でやると大変なんですよね・・・これがあれば、捗りそうです。でも使うのは今年の暮れですかねぇ。

Adobe Photoshop Elements 2019|日本語|Windows/Macintosh版

2019年1月 8日 (火)

TensorFlowの画像認識プログラムをKerasに書き換えてみた

ずっと以前からやろうやろうと思っていてやれなかったことを、最近ようやくやりました。

TensorFlowで歴代「クラウン」の画像を判別させてみた: EeePCの軌跡」に始まり、「TensorFlowで”日本のお城”を識別させてみた: EeePCの軌跡」や「TensorFlowで「けものフレンズ」の”フレンズ判別器”作ってみた: EeePCの軌跡」で使った、TenforFlow用の画像認識コードを、Keras用に書き換えてみました。

なぜ今さら、Kerasに書き換えたのか?

メリットは2つあります。

(1) コードが見やすい

 

(2) 収束性が安定する

何と言っても、コードが見やすいです。以下に、学習用(cnn_keras_train_56.py)と推論用(cnn_keras_app_56.py)のコードを載せます。(おまけ:可視化用コード cnn_keras_app_56_vis.py も載せました)

【cnn_keras_train_56.py】

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
import cv2
import numpy as np
import tensorflow as tf
import tensorflow.python.platform

import keras
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense,Dropout,Flatten
from keras.layers import Conv2D,MaxPooling2D
from keras.preprocessing.image import array_to_img,img_to_array,load_img
from keras import backend as K
from sklearn.model_selection import train_test_split
from keras.models import load_model
from keras.callbacks import ModelCheckpoint

path=os.getcwd()+'/data/'
checkDir=os.getcwd()+'/checkpoints/'
if not os.path.exists(checkDir):
          os.mkdir(checkDir)
class_count = 0
folder_list=os.listdir(path)

for folder in folder_list:

  class_count = class_count+1

NUM_CLASSES = class_count
IMAGE_SIZE = 56

batch_size = 20
epochs = 100

flags = tf.app.flags
FLAGS = flags.FLAGS

flags.DEFINE_string('label', 'label.txt', 'File name of label')

if __name__ == '__main__':

    count=0
    folder_list = sorted(os.listdir(path))

    train_image = []
    train_label = []
    test_image = []
    test_label = []
    X = []
    Y = []

    f = open(FLAGS.label, 'w')
    for folder in folder_list:
        subfolder = os.path.join(path,folder)
        file_list = sorted(os.listdir(subfolder))

        filemax = 0

        i = 0

        for file in file_list:

            i = i + 1

            img = img_to_array(load_img('./data/' + folder + '/' + file,target_size=(56,56)))
            X.append(img)
            Y.append(count)

        label_name = folder + ' ' + str(count) + '\n'
        f.write(label_name)

        count +=1

    X = np.asarray(X)
    Y = np.asarray(Y)
    X = X.astype('float32')
    X = X / 255.0

    Y = np_utils.to_categorical(Y, NUM_CLASSES)

    train_image, test_image, train_label, test_label = train_test_split(X,Y,test_size=0.20)

    f.close()
    print(u'画像読み込み終了')

    input_shape = (IMAGE_SIZE, IMAGE_SIZE, 3)

    model = Sequential()
    model.add(Conv2D(32,kernel_size=(3,3),
                     activation='relu',
                     padding='same',
                     input_shape=input_shape))
    model.add(Conv2D(32, (3,3), activation='relu', padding='same'))
    model.add(MaxPooling2D(pool_size=(2,2)))
    model.add(Dropout(0.25))

    model.add(Conv2D(64, (3,3), activation='relu', padding='same'))
    model.add(Conv2D(64, (3,3), activation='relu', padding='same'))
    model.add(Conv2D(64, (3,3), activation='relu', padding='same'))
    model.add(MaxPooling2D(pool_size=(2,2)))
    model.add(Dropout(0.25))

    model.add(Conv2D(128, (3,3), activation='relu', padding='same'))
    model.add(Conv2D(128, (3,3), activation='relu', padding='same'))
    model.add(Conv2D(128, (3,3), activation='relu', padding='same'))
    model.add(MaxPooling2D(pool_size=(2,2)))
    model.add(Dropout(0.25))

    model.add(Flatten())
    model.add(Dense(1024, activation='relu'))
    model.add(Dropout(0.5))
    model.add(Dense(NUM_CLASSES, activation='softmax'))

    model.compile(loss=keras.losses.categorical_crossentropy,
                  optimizer=keras.optimizers.Adadelta(),
                  metrics=['accuracy']
                  )

    chkpt = os.path.join(checkDir, 'model_.{epoch:02d}-{val_loss:.2f}.h5')
    cp_cb = ModelCheckpoint(filepath = chkpt, monitor='val_loss', verbose=1,
                            save_best_only=True, mode='auto')

    model.fit(train_image, train_label,
              batch_size=batch_size,
              epochs=epochs,
              verbose=1,
              validation_data=(test_image, test_label),
              callbacks=[cp_cb],
              )

    model.summary()

    score = model.evaluate(test_image, test_label, verbose=0)

    model.save('model.h5')

【cnn_keras_app_56.py】

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
import numpy as np
import tensorflow as tf
#import cv2

import keras
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense,Dropout,Flatten
from keras.layers import Conv2D,MaxPooling2D
from keras.preprocessing.image import array_to_img,img_to_array,load_img
from keras import backend as K
from sklearn.model_selection import train_test_split
from keras.models import load_model

path=os.getcwd()+'/analysis/'
file_list=os.listdir(path)

i = 0
label_name = []

flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_string('label','label.txt','File name of label')

f = open(FLAGS.label,'r')
for line in f:
  line = line.rstrip()
  l = line.rstrip()
  label_name.append(l)
  i = i + 1

NUM_CLASSES = i
IMAGE_SIZE = 56

if __name__ == '__main__':
    test_image = []
    test_fileNM = []

    path=os.getcwd()+'/analysis/'
    file_list=os.listdir(path)

    for file in file_list:
        img = img_to_array(load_img(path + file, target_size=(56,56)))
        test_image.append(img)
        test_fileNM.append(file)
    test_image = np.asarray(test_image)
    test_image = test_image.astype('float32')
    test_image = test_image / 255.0

    model = load_model('model.h5')

    predictions = model.predict_classes(test_image)
    print('predictions :',predictions)
    print(label_name)

    i = 0

    for pred in predictions:
        print(u'ファイル : ', test_fileNM[i], u'は ', label_name[pred], u'です。')
        i +=1

旧記事に載っているコードと比べると、格段に短くなっています。

短いだけでなく、動作も安定してますね。

おまけですが、もう一つ推論用コード(可視化用)を。

【cnn_keras_app_56_vis.py】

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import os
import sys
import numpy as np
import tensorflow as tf
import cv2

import keras
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense,Dropout,Flatten
from keras.layers import Conv2D,MaxPooling2D
from keras.preprocessing.image import array_to_img,img_to_array,load_img
from keras import backend as K
from sklearn.model_selection import train_test_split
from keras.models import load_model
from keras.models import Model
from PIL import Image

path=os.getcwd()+'/analysis/'
outpath=os.getcwd()+'/visible/'
if not os.path.exists(outpath):
          os.mkdir(outpath)
file_list=os.listdir(path)

i = 0
label_name = []

flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_string('label','label.txt','File name of label')

f = open(FLAGS.label,'r')
for line in f:
  line = line.rstrip()
  l = line.rstrip()
  label_name.append(l)
  i = i + 1

NUM_CLASSES = i
IMAGE_SIZE = 56

if __name__ == '__main__':

    model = load_model('model.h5')

    for file in file_list:
        img2 = img_to_array(load_img(path + file, target_size=(56,56)))

        test_image = np.asarray(img2)
        test_image = test_image.astype('float32')
        test_image = test_image / 255.0
        test_image = test_image.reshape((1,) + test_image.shape)

        intermediante_layer_model = Model(input=model.input,
                                    outputs=model.get_layer("max_pooling2d_3").output)
        y = intermediante_layer_model.predict(test_image)

        test = np.split(y,128,axis=3)
        test2 = np.zeros((1,7,7,1))
        for ii in range(128):
            test2 = test2 + test[ii]
        image2 = np.array(test2)

        image3 = np.reshape(image2,(7,7))
        img = Image.new('RGB',(7,7),'black')
        pix = img.load()

        max = np.max(image3)
        if max>255:
            max = 255
        min = np.min(image3)
        if min < 0:
            min = 0
        dif = max-min

        for x in range(7):
            for y in range(7):
                r = 0
                g = 0
                b = 0
                p = image3[x,y]
                if p < 1.0:
                    r = 0
                    g = 0
                    b = 0
                elif p < min:
                    r = 0
                    b = 0
                    b = int(p*17.0)
                elif p < min + 1.0 * dif/4.0:
                    r = 0
                    g = int((p-15.0)*17)
                    b = 255
                elif p < min + 2.0 * dif/4.0:
                    r = 0
                    g = 255
                    b = int(255-(p-min + 1.0 * dif/4.0)*51.0)
                elif p < min + 3.0 * dif/4.0:
                    r = int((min + 2.0 * dif/4.0)*51.0)
                    g = 255
                    b = 0
                elif p < max:
                    r = 255
                    g = int(255-(p-min + 3.0 * dif/4.0)*51.0)
                    b = 0
                else:
                    r = 255
                    g = 0
                    b = 0
                pix[y,x] = (b,g,r)

        oimg = np.array(img)
        oimg = cv2.resize(oimg,(56,56))
        savecv2 = outpath + 'hpool3_cont_' + file
        cv2.imwrite(savecv2,oimg)
        srcf1 = path + file
        src1 = cv2.imread(srcf1)
        src1 = cv2.resize(src1,(56,56))
        dst = cv2.addWeighted(src1, 0.7, oimg,0.6, 0)
        cnt_filenm = outpath + 'hpool3_dst_' + file
        cv2.imwrite(cnt_filenm,dst)

        predictions = model.predict_classes(test_image)
        #print('predictions :',predictions)
        #print(label_name)

        print(u'ファイル : ', file, u'は ', label_name[predictions[0]], u'です。')

こちらは、推論の結果を「可視化」してくれるコードです。

さて、このコードの使い方です。

■ 準備

まず、上の2つのコード(「cnn_keras_train_56.py」「cnn_keras_app_56.py」)をコピペして、保存してください。

Windows版Anaconda 3やLinux環境下で、いくつかpipコマンドでインストールしてください。

(tensorflow[tensorflow-gpu]、keras、opencv-python、h5py、numpyなど)

■ 学習

教師データを「data」フォルダ内に入れてください。

その場合、ラベルごとに分けたフォルダを作り、その中にラベルに応じた画像を入れます。

Tfkemofr02

こんな感じです。なお、フォルダ名は英数字、スペースなしお願いします。

それが終われば、

> python cnn_keras_train_56.py

と実行します。

Cnn_keras01

こんな画面が出て、 学習が実行されます。

なお、以前のTensorFlowのコードの場合、Loss値がNanとなることが多かったんですが、Kerasにすると全然問題なく収束しますね。

上のコード(cnn_keras_train_56.py)の92~107行目のmodel.~の部分を深層化しても、全然問題なく収束してくれます。

以前は深層化するために、一段浅い学習モデルを初期値にしてまわしてたんですが、そんな手間がなくなりました。しかも、速い・・・TensorFlowでのあの苦労が、嘘のようです。

学習が終わると、「checkpoints」というフォルダができているはずです。

そのフォルダにある、一番最後に吐き出したモデルファイル(model_.[サイクル数]-[Loss値].h5)というファイルができているので、いちばんLoss値の小さいやつを一つ上の階層に移動して、「model.h5」という名前に変えておきます。

■ 推論

ここで、推論させます。

「analysis」というフォルダを作って、その中に推論させたい画像を入れます。

Tfkemofr04

こんな感じです。正方形に切っておくと、なおベターです。

そこで、以下のコマンドを実行。

> python cnn_keras_app_56.py

すると、こんな画面が出るはずです。

Cnn_keras02

ファイルごとに、推論結果が出てきます。

ちなみに、もう一つの推論コード

> python cnn_keras_app_56_vis.py

を実行すると、「cnn_keras_app_56.py」と同じ挙動をしつつも、「visible」というフォルダが作られて、「analysis」フォルダにある元画像1枚1枚に対し、以下のような特徴分布画像を出力します。

【元画像】

Kaban3

【特徴分布】(弱い:青~強い:赤)

Hpool3_cont_kaban3

【元画像+特徴分布】

Hpool3_dst_kaban3

赤いところほど強く反応しているところで、青いところはほぼ特徴がないととらえている場所です。

どうやらこの学習器では、「かばんちゃん」の前髪の辺りに特徴を見出して判断してるようですね。

教師データの与え方やハイパーパラメーターチューニングなどに、重要なヒントを与えてくれそうです。

これを使えば、その画像のどの「特徴」をとらえて推論しているかが、一目瞭然ですぐに分かるというものです。

これを応用すれば

Cnn_keras03

こんなことも可能です(cnn_keas_app_56.pyにOpenCVの物体検出を併用、コード省略) 。

深層化や、トライアンドエラーが、すごく捗ります。

しかも、なぜかTensorFlowのコードよりも速いです。

その分、ちょっと扱いに注意が必要ですが・・・例えば、Conv2D(~)の中の”padding='same'”を忘れると、えらいことになります(畳み込み層を通るごとに、画像サイズが小さくなります)。

このKeras版コード、実際に業務用に使っていますが、全然問題なく使えますね。

コードが見やすい分、教育用にも適してます。

安定性が増す、見やすい、チューニングが捗る。いいことづくめです。こんなことなら、もっと早く取り組んでおけばよかった・・・

もちろん、Kerasにも欠点はあります(用意されていない手法を実装するのが、とても苦手)が、よほどそういう事態には巡り合わないものと思われます。

画像認識を本気で学習してみたい方は、それこそKerasを使わずにガチでコードを書いた方が学べることも多いですが、ともかく画像認識を業務等で使いたい!という向きの方には、Kerasはおすすめです。

PythonとKerasによるディープラーニング

2019年1月 7日 (月)

年末恒例・・・のはずが年始に自炊作業やりました

本当は年末にやりたかったんですが、いろいろとありまして。

Img_3315

年が改まって、ようやくこれらの雑誌を”自炊”しました。

去年は結構、歴史系の本を買ったんです。「歴史人」や「歴史街道」、「歴史群像」など。

が、これらの本は長男も読むので(最近、歴史好きです)、こっちは自炊せず、長男に渡しました。

というわけで、プログラム系と、ニュートンが一冊です。

ちなみに、別冊のマイコンBASICマガジンは紙のまま残すため、自炊対象から外してます。

Img_3316

この断裁機も、ドキュメントスキャナ「ScanSnap 1300i」も、2012年に買ってるんですよね。

もう6年以上たってますが、未だに使えてます。元は取れたかなと。

Img_3317

というわけで、まずは背中をぶった切ります。

このように、雑誌をセットして・・・

Img_3318

ザクッ!

Img_3319

あっという間に、斬首されます。

Img_3320

この断裁機の前に、逆らえるものなどいない・・・

次々に斬り捨てられる、雑誌達・・・

Img_3322

さて、いよいよスキャンですが、その前にこういうものを取り除きます。

時々入ってるんです、はがきが。

読み取りエラーの元ですからね。取り除きます。

他にも、裁断不良でページ同士が引っ付いてるところもあります。そういうのを念入りにチェックして、ドキュメントスキャンに通します。

Img_3324

やり方ですが、まずは硬い表表紙の紙を先に一枚、通します。

Img_3327

ScanSnap 1300iは一度に10枚までしか読めませんが、こうやって先を斜めにそろえて

Img_3328

ぶっ指してやると、Interface誌の紙なら30枚くらいは行けます。

Img_3329

Interfaceの場合は188ページ(表、裏表紙含む)あるので、3回に分けて装填する必要があります。

1枚あたりおよそ8秒。30枚なら約240秒。約4分かかります。これが3回なので、Interface誌なら一冊当たり12、3分ということに。

これを全部で6冊やりました。

結構、大変です。

まとめてやらずに、こまめにできれば、本当はいいんですけどね。ついつい年末年始まで残してしまいます。

Img_3326

そういえば私も、こういう文字が読みづらい歳になりました。

電子化して、自在に拡大縮小できる環境に持っていくことは、あながち無駄ではありませんね。

といっても、電子化した書籍ってわりと読まないんですよね。

どちらかというと、無駄に捨てるくらいなら・・・ということで残して、それで自己満足している感じ。

今回、自炊した雑誌も、読むことになるんでしょうか?

富士通 スキャナー ScanSnap S1300i (A4両面)

2019年1月 6日 (日)

1円玉より小さいマイコンボード「Tomu USB」

いまいち用途が分かりませんが、そんな極小のマイコンボードがあるそうです。

1円玉より小さい!極小マイコンボード「Tomu USB」が発売、LEDやボタンを装備 - AKIBA PC Hotline!

Tomu USBというこのマイコンボード。なんと、プラスチックのケースをつけて、このままUSB端子に突っ込むんだそうです。

プログラムの転送などは楽そうですけど、インターフェースは2つのLEDとタッチパッドボタンのみ。

リンク先には、このタッチパッドボタンを用いた入力装置として使うか、あるいは2段階認証用のトークンとして用いることができると書かれてますね。が、それ以外の使い道はどうなんでしょうか?

もうちょっとインターフェースが充実していると、電子工作などに使えそうなんですけどね。この大きさに期待しちゃ、いかんですかねぇ。

お値段は税抜きで2000円ほど。Raspberry Pi Zeroよりも小さいですが、高いです。ご注意を。

Raspberry Pi Zero WH スターターセット (本体・ケース・ヒートシンク・Mini-HDMIケーブル・OTGアダプター)

2019年1月 5日 (土)

カップヌードルを10万円分買うと手に入る!大型電気ポット「カップヌードル給湯くん」プレゼント中

こんなキャンペーンしてたんですね。知りませんでした。

大型電気ポット「カップヌードル給湯くん」プレゼントキャンペーン|日清食品グループ オンラインストア

10リットル、30杯分以上のカップヌードルを作ることが可能な大型の電気ポット「カップヌードル給湯くん」が入手できるというキャンペーンをやっています。

手に入れるには「大量購入コーナー」で、5回かつ10万円以上の購入をする必要があるとのこと。結構なハードルですね。

20食入りのカップヌードルが大体3000円ほどなので、10万円分と言えば・・・33箱、660食文ですね。一日一つ食べたとしても、2年近く持ちます。

あ、10ケース以上の注文で30%オフらしいので、さらに増量可能・・・ですが、そんなにいらない・・・

会社などでの大量購入に向いた企画ですね。たくさんのカップヌードルを配りたくなったら、ぜひ応募を。

日清 カップヌードル 77g×20個

2019年1月 4日 (金)

電子工作マガジン冬号の別冊は「ベーマガ」!

近所の本屋に売ってなくて、結局、Amazonで買いました。

Img_3296

電波新聞社発刊の「電子工作マガジン」2018年冬号です。

Img_3297

が、実は・・・

Img_3298

こんな別冊がついております。

そうです、「マイコンBASICマガジン」、通称「ベーマガ」がついているんです。

Img_3309

裏はこんな感じ。

イオシスの代表取締役が登場。なんと、ベーマガ世代だったんですね・・・

Img_3299

私が保有するもっとも古いベーマガ 1993年3月号と比べてみました。

この別冊、一回り小さいですね。

Img_3312

目次です。

非常にシンプルで、IchigoJam用のコードなどが連載されています。

Img_3300

中は、こんな感じ。

およそ、2018年とは思えない記事です。

Img_3301

言っておきますが、これは2018年版です。

Img_3303

なんだか、ちょっと懐かしいレイアウトですね。

Img_3302

でもこれ、手で打ち込まないといけないの?ネットから落とせないんでしょうか?

Img_3304

さて、これは1993年版。今から25年前のものです。

2018年版よりもむしろ、デザイン的には新しい・・・か?

Img_3308

さて、1993年版が続きます。これは、くりひろし氏の「ザ・パソコンレクチャー」。

情報教育の話題が書かれていました。

でも、未だに情報教育ってうまくいってないんですよね。ようやくプログラミングの必修がはじまろうとしているところです。でももう、25年ですよ・・・

Img_3310

さあ、帰ってきました、2018年版。

カラーです。パソコンレクチャーが、カラーになっています。

Img_3307

が、中はこの通り、いつも通り(?)の白黒です。

が、IchigoJamとリモコンHATの解説です。この辺りは今どきの話題ですね。

Img_3311

本誌の方には、ちゃっかりこのHATの解説がなされています。この辺りは、電子工作マガジンですね。

Img_3313

さて、クイズです。

これは2018年版か、それとも1993年版か?

見ればわかりますね。2018年版です。Raspberry Pi用のX68000風ケースです。

Img_3314

一方、こちらは1993年版のベーマガの広告。

時代を感じますね。なんと、パソコンが20万円からですよ・・・

新旧を行ったり来たりすると、どっちがどっちだかわからなくなりますね。

そんなノスタルジックな雰囲気の、別冊ベーマガです。

あの頃を知る人ならば、ぜひ一冊。

そういえば、ベーマガって元々は月刊マイコンラジオの製作の別紙だったんですよね。(間違えてました、訂正です。)

で、今度は電子工作マガジンの別紙として復活。

てことは、そのうちまた独立して・・・なわけ、ないですかね?

電子工作マガジン2018冬号 特別別冊付録付き

2019年1月 3日 (木)

AIの無駄遣いか!?ダジャレがハマると布団が吹っ飛ぶ!?「オフトゥンフライングシステム」

なぜ、布団が吹っ飛ぶのか!?ああ「フトンがフットンだ」ですからね・・・

納得したところで、心が寒くなるだけのこのダジャレ。そんな寒いダジャレ好きには朗報の、画期的なシステムが登場しました。

ダジャレの面白さをAIが判定し布団が吹っ飛ぶ装置「オフトゥンフライングシステム」が開発される - GIGAZINE

その名も「オフトゥンフライングシステム」。布団が吹っ飛ぶシステム、という意味のようですね。

なんとこのシステム、いわゆる「AI」搭載のシステムです。

この画像を見る限り、Chainerを使っているんでしょうね、きっと。

上手くハマったダジャレを言うと、布団が吹っ飛びます。

いやあ、楽しいですねぇ。

ですが、50点以上のダジャレを言わないと、思惑通りにはなりません。案外、厳しいシステムです。

このダジャレ判定システムは「完全反復型」、「不完全反復型」に対応しているそうで、これに対応するためには音韻だけでなく、言葉の意味もAIに理解させていないといけないらしいです。

リンク元を読んでいただくと分かりますが、やはり意味をきちんと理解していないとうまく判定できているとは言い難いそうなので、判定率はさほど高いとは言えないそうで。

それでもまあ、試みとしては面白いですね。

もうちょっと進めて、俳句を判定するAIなんてものができるといいですね。ダジャレよりはまともなものが作れそうな気がします。って、お前が作れといわれそうですが。

明日使える仕事術 笑談力―思わず微笑むダジャレ108選

2019年1月 2日 (水)

2019年も・・・ヴィレッジヴァンガードの福袋購入です!

辞める、今年こそ、やめてやる・・・や・・・やめ・・・

やめられない止まらない!福袋!

毎年恒例!ヴィレッジヴァンガード福袋!!!です。

とうとう11年目になりました。毎年飽きませんね。妻にも言われます。

Img_2775

今年は、緑の紐ですね。

Img_2774

意外と完売した色があって、ちょっと焦りましたね。この直後、ブラックも売り切れでした。

この時点で、もっとも残り少ない「グリーン」にしたんですが、こいつは「断腸の思い ~ 万策尽きる福袋」というよく分からないメッセージでして。

その下には「”愛”称が『ゴミ袋』だっていうのに毎年買っちゃうような愛すべき愉快人よ、今年も全部ごみだと安心するな!」という挑戦的なメッセージが書かれていたため、あえてこれにしました。

ここ数年、なぜか続けてイエローばかりを買っていることもあって、あえて違う色をチョイスしました。

Img_2787

さて、早速中身を

Img_2788

出しました!

不穏なものは、たった一つだけです。

ちなみに、特別入場券と、海外・国内旅行の当たるシリアルコード付きの紙もついてました。

Img_2790

まずはこれ。犬ですよ、犬。可もなく、不可もなくといったぬいぐるみですね。次男行きです。

Img_2791

なぜかもう一つ、ぬいぐるみがついてきました。

イノシシ、つまり干支です。よりによって、年男の私が干支を当てました!

幸先がよさそう・・・いや、いいのかな?

Img_2792

名探偵コナンのストラップのようですが・・・誰?

「赤井秀一」と書かれてましたが、やっぱりよくわかりませんね。

残念ながら、コナン君好きがいないんですよ、我が家。でも、次男がもらっていきました。

Img_2794

今回の大当たりは、多分これですね。

カナル式のインナーイヤーヘッドフォンです。

木目調のデザインも上々、音もよさげな雰囲気です。

Img_2796

早速iPhone SEに挿して

Img_2797

聞いてみました。

こもりもなく、いい音です。といっても、1000~2000円程度のヘッドフォンの音ですね。低音の響きはまあまあですし、この値段の福袋としては、まあまあの品ですね。

ただし、これが使えるiPhoneが減りつつあるのが残念なところ。だからこそ、福袋の品になっちゃったんでしょうけど。

Img_2798

対照的に、こちらはハズレ臭のぷんぷんする品。

今年最大の地雷、道にあったら踏みたくないものナンバー1なデザインですよね。

Img_2799

中は、これです。想像通りの品でした。

どうやら、これを風呂に浮かべて釣り上げるというおもちゃのようですね。

Img_2802

わーい!たーのしー!!

なわけないだろ!!ヴォケッ!!

品がなさ過ぎて、かえって子供が大喜びでした。

Img_2803

というわけで、集合写真。

今年は、意外と当たりでしたね。

となると、逆説的に私的にはハズレ年の予感・・・

と言いたいところですが、去年があれだけハズレごみを引いて散々な年でしたからね。

案外、当たりの多い今年は、当たり年かも!?

1年の計は、ヴィレヴァンにあり。

なんでもいいから、今年はいい年、飛躍する年になってほしいものです。

以下、歴代福袋のリンクを張っておきます。

2009年 福袋

2010年 福袋

2011年 福袋

2012年 福袋

2013年 福袋

2014年 福袋

2015年 福袋

2016年 福袋

2017年 福袋

2018年 福袋

にしても毎年、飽きもせず買ったものですねぇ・・・果たして、来年は如何に!?

【ヴィレッジヴァンガード オリジナル商品!】 一升瓶抱き枕

2019年1月 1日 (火)

2019年明けましておめでとうございます

2019年は、いのしし年です。

ちなみに、私は年男なんですよね。今年で48歳になります。

Dsc_3573

てことで、こんな勢いで猪突猛進で突っ走れる一年にしたいですねぇ。

にもかかわらず、私生活ではすでに、いくつか壁のようなものが目の前に立ちはだかってますが・・・

物欲を刺激して、突っ走りたいものです。

今年もよろしくお願いいたします。

2019年 日本はこうなる

« 2018年12月 | トップページ | 2019年2月 »

無料ブログはココログ

スポンサード リンク

ブログ村