ネガティブ

疲労がたまりすぎるとネガティブになってしまう。

これは避けることができない。

 

大半は寝て起きれば無かったことになるが、無かったことにならなかったら大問題だ。

そこから色々崩壊してしまう。

 

それを防ぐために毎日しっかり休養をとって疲労をどうにかすることが大事だ。

疲労ってどうしたら消えるのかね?

私にはまだわからない

バイトで溜まった疲れは寝ても消えない…

疲れがミルフィーユのように重なってゆく

重ね過ぎたらバランスが保てなくて倒れる。

 

疲労回復というものがわからない。

人間はどう疲労を回復して生きているのか

どう疲労と向き合って生きていくのが良いのか

疲労と引き換えに金を手に入れているのか否か

私には何もわからない…なにも…

 

将来のことは考えたくないものだ。

ネガティブシンキングしかできない。

来年のことなんか考えたくもない

なのに時間は迫ってきている。

逃げたいが逃げられない

逃げてもそのツケが後で回ってくる。

わからない

正解がわからない

すべての選択肢が失敗な気がする

正解を教えてください誰か

 

いつか楽しく生きられる日が来ることを願っている。

おやすみなさい

虚無ガチャ

今年の6月末にサクラマスさん(@trout_SAKURA)っていうオタクにヴァイスシュヴァルツ(以下WS)っていうクソロードのカードゲームを教えてもらったんだ。

WSのカード自体はPoppin'Partyのトライアルデッキ+が家にあったがルールとかわからんからそのまま放置してたわけ。

ルールとかカードの見方とか教えてもらってほーんって理解はしたんだがまぁやる相手もいないのですぐ忘れる。

3回目くらいで大体ルールを覚えることができた。

WSは楽しい。

しかしデッキを組むのはわからんから全部聞いて考えてもらってる

牛込りみ単体のデッキを作りたいと思っているのでこの世に存在する牛込りみのカードだけでデッキを組んでもらったのだが持ってないカードも含まれているわけで。

そこらへんのカードショップで買えばええやん?って思うんだが川崎とかいうゴミみたいな街じゃカードショップは「ホビーステーション」と「フルコンプ」だけ。

この前まで「イエローサブマリン」があったのだが潰れてしまった。悲しい。

フルコンプは品揃えが悪すぎるので無いに等しいので実質川崎はホビーステーションのみって感じ。

持ってないカードはまぁ強かったりなんだりするカードなので1枚500円とかするのでなんかあんまり買う気になれなくてカードが未だ揃ってない。

なのに今日はブースターパックを買って虚無ガチャをしてしまった。

f:id:chun37:20180922185355j:image

ここで本題に入る

ソシャゲで3200円かけて虚無10連ガチャするより、ブースターパックで300円かけて虚無8連した方が安上がりなのでは?

計算がしやすいので8と10の最小公倍数の80を使う。

80連しようと思った時

カードは300×10=3000円

ソシャゲは3200×8=25600円

ありえんくらいにカードはお得

紙切れに高いものは1万円とかするしアホみたいに高く見えるけどお目当てのSSRを出すために2万とかかけてたら結局掛けてる金額はカードの方が安いんや…

 

俺はこの世界の真理に気づいてしまった…

ソシャゲには極力金を入れずに生きていこうと思う。

カードにもあんまり使いすぎないように生きていく。

 

おわり。

 

【ネタ】画像をシンメトリーにするPythonのプログラムを書いた

題名のとおりです。

Twitterで話題のHIKAKINシンメトリーBotとかあんな感じでシンメトリー画像を自分で作りたいなぁと思ったのでシンメトリー画像ではなくシンメトリー画像を作るプログラムを作りました。

ついでにPIL(Python Image Library)のお勉強も兼ねてます。

プログラムはGistに上げました。

プログラム


解説

ネガポジ反転

def NPreverse():
    img_array = 255 - np.array(img)
    Image.fromarray(img_array).save(f'changedImage/NPreverse_{filename}.png')

img変数にはPIL.Image.Imageの画像データが入っています。

1行目でNumPyのndarray型に変換して255を引くとネガポジ反転になるそうです。(詳細はよくわかっていない)

PILのfromarray関数でndarrayをPILの型に変換してsaveします。

シンメトリー(左半分を使用)

def symmetry1():
    tmp1 = img.crop((0, 0, img.size[0] // 2, img.size[1]))
    tmp2 = ImageOps.mirror(tmp1)
    dst = Image.new('RGB', (tmp1.width + tmp2.width, tmp1.height))
    dst.paste(tmp1, (0, 0))
    dst.paste(tmp2, (tmp1.width, 0))
    dst.save(f'changedImage/symmetry1_{filename}.png')

crop関数で左半分を切り抜いてImageOps.mirror関数で切り抜いた画像の左右反転したデータを用意します。

Image.new関数で新しい画像を作成してpaste関数で貼り付けてsave関数で保存しています。

シンメトリー(右半分を使用)

def symmetry2():
    tmp2 = img.crop((img.size[0] // 2, 0, img.size[0], img.size[1]))
    tmp1 = ImageOps.mirror(tmp2)
    dst = Image.new('RGB', (tmp1.width + tmp2.width, tmp1.height))
    dst.paste(tmp1, (0, 0))
    dst.paste(tmp2, (tmp1.width, 0))
    dst.save(f'changedImage/symmetry2_{filename}.png')

crop関数で右半分を切り抜いてImageOps.mirror関数で切り抜いた画像の左右反転したデータを用意します。

Image.new関数で新しい画像を作成してpaste関数で貼り付けてsave関数で保存しています。

まとめ&次にやりたいこと

こんな感じでPythonで簡単に画像のネガポジ反転、シンメトリー画像が作成できました。

人の顔を半分にしてシンメトリー画像を作成すると結構面白い画像が出来上がるので何かを使って人の顔を認識してそこで半分にするようなプログラムを作りたいと思いました。

レヴュースタァライト 1stLIVE レポ

6月23日月曜日、レヴュースタァライトの1stLIVEがオリンパスホール八王子で行われ、私は現地で参加しました。

昼の部と夜の部があり、私は夜の部のみの参加。

セトリ

記憶が曖昧なのでTwitterから情報を頂いてきました。

  1. ようこそ九九組
  2. ディスカバリー
  3. ロマンティッククルージン
  4. Circle of the Revue
  5. Star Divine
  6. 情熱の目覚めるとき
  7. GANG☆STAR
  8. Fancy you
  9. 星のダイアローグ
  10. 願いは光になって
  11. キラめきのありか
  12. 舞台少女心得
  13. スタァライトシアター

アンコール

  1. Glittering Stars
  2. Star Divine

セトリについて

ようこそ九九組、ディスカバリー!、ロマンティッククルージン、星のダイアローグ

とアンコール含め15曲中5曲が新曲でワクワクしました。

記憶障害なので殆ど覚えていないのですが「ようこそ九九組」は曲中にキャラクターの名前が入ってて自己紹介ソングみたいな感じでした。

1stシングル、限定シングル、2ndシングルの全てを歌って頂いたのでめっちゃ有難かったです。

1stシングルと限定シングルの曲は#1 revivalの千秋楽公演が最後だったのでまた聞けていいなぁという気持ちになり、2ndシングルはリリイベの時に4人で歌っていたのを聴いただけだったので全員で歌うとまた違うところがありますね。(スタァライトシアターは#1 revivalの時に全員で歌っていた)

アニメのED曲以外の全ての曲を聞くことができるライブはこれが最初で最後だったのではないかと感じます。(曲が増えていくと2ndライブで歌われない曲も出てきそう)

曲の間のコーナー

「九九組の絆を確かめよう」のコーナー(名前違うかもしれない)ではしっぺ、手のマッサージ、後ろから抱く、頭を撫でる、頬になにかする(もう1つあったが忘れた)をして誰が何番目にやったかを当てるゲームをしていました。

キャストさんそれぞれの個性が全面的に出ていて見てて楽しかったです。彩沙は彩沙みが溢れていたし、生田輝さんがイケメンでやべぇしか言えない語彙力低下オタクになりました。

曲について

1stシングルも限定シングルも2ndシングルもどれも良曲すぎて聴いてて楽しかったです。

Star Divineはやっぱり最初の曲で強いしスタァライトシアターは同じ踊りをするので楽しくてぶち上がれますね(個人の感想です)

新曲の発売が待ち遠しくなりました。新曲発売までに全部の曲を聴きこんで完璧に覚えましょう。

新アプリ「スタリラ」

LIVEの途中にアプリの発表がありました。

「少女☆歌劇 レヴュースタァライト -ReLIVE-」というゲームです。

写真撮影してSNSに上げてね と言われ写真撮影タイムがあったので沢山連写しました。

f:id:chun37:20180626102546j:image

500枚ほどある中から適当に選んだ1枚をご覧ください。

(iPhoneのズーム機能ゴミだなぁ…)

ゲームの詳細は25日のプロジェクト大発表会で発表されたのでそちらをご覧ください(放棄)

感想

やっぱり彩沙は可愛いなぁ〜(オタク)

ペヤング超超超大盛りGIGAMAXを食べてみた

Twitterで話題のペヤング超超超大盛りGIGAMAXを買って食べてみました。

f:id:chun37:20180622074849j:image

お前なんか食い切ってやるぜ!みたいな気持ちで挑んだら負けました()

脅威の2142kcal

成人男性の1日摂取カロリー平均は個人差がありますが2,600kcalらしいです。

高校生(17歳)はもう少し多いくらいかな?

カロリー過多って感じしますね。

「1日に1つまでにしてください」ってまるか食品株式会社がパッケージに書く意味もわかる気がします。

食べる準備

f:id:chun37:20180622075518j:image

ビニールをはがすと大きな文字で「GIGAMAX」って書かれてますね。主張が激しい

f:id:chun37:20180622075834j:image

中は2つに分かれていました。大盛りの麺を流用したのかな?特に分けてる意味はなさそう。

お湯準備しよ〜と思ってどのくらい必要かなぁって確認したら1300ml…

f:id:chun37:20180622075940j:image

電気ケトルの最大容量が1200mlなので足りないやんけ!と思って鍋を用意してお湯を用意しました。(お湯入れる時にこぼれて火傷しました)(やかん使えばよかった)

f:id:chun37:20180622081017j:image

湯切り終わったあと割り箸と手を並べて大きさがわかりやすい感じにしました。かなりタテヨコ大きいし高さもあってやべぇ…

食べる

勢いよく食べ始めたけど半分くらい食べたところで口の中パッサパサになりました。

大量の焼きそばだけを見てると食べる気が失せてきます。

味変えていかないと完食厳しいです(完食できたとは言っていない)

f:id:chun37:20180622081349j:image

全部食べるのはキツかったです

朝食で食パン2枚食べちゃったから1枚だったら全部食べられたと思いますね(言い訳)

感想&今後食べる予定の方に向けて

美味しかったですが当分ペヤング食べたくないですねw

ガリガリだけど結構食べる方の人間だと思っていたのですが食べきれなくて悔しかったです。

少ししたらまたリベンジします。

お腹いっぱいで夜飯がほとんど入りませんでした。(バイトでもしていれば消費出来たかもしれない)

食べる予定の前の食事を1食抜いてから食べるとちょうど食べ切れると思います。

398円で2142kcalなので金欠の人間にもありがたかったです。

PythonistaでNowPlayingする時のアートワーク周りで詰まった

お久しぶりです、ちゅん(@Ushigome)です。

最近バイトを始めてニートを脱したのでTwitterスクリーンネームをN_EE_Tから変更しました。

アートワークをpng形式の画像ファイルにする方法がどこにも記されていなかったのでメモ。

 

PythonistaでNowPlayingしたいと思った経緯

iDeviceを使用しているPythonistaはご存知のiOSPythonが出来る「Pythonista 3」の話です。

私は音楽をよく聴くほうの人間なのですが、TwitterでNowPlayingをしたくなるときがあります。

いつも使っているTweetbot4にはNowPlayingをツイートする機能は無く、TheWorldやHel2umを使用しなければなりません。ちょっと不便…

とりあえず検索

Pythonista 3で簡単にNowPlayingがツイートできないかなぁと検索するわけですよ、見つかります。

Pythonista for iOS で Nowplaying する | aoshiman.org

こちらの記事が見つかります。

Now Playing via Pythonista for iOS · GitHub

記事中のGistに上げられているプログラムを使用したいと思います。

動作しない箇所を修正

  1. iOS 11からsocial.frameworkが廃止になったのでPythonista 3に実装されている「twitter」モジュールを「tweepy」に変更
  2. 「iPodMusicPlayer」が廃止されているので「systemMusicPlayer」に変更(参照)
  3. iOS 11のバグかわからないが曲を再生しても「再生なし」と出たり曲変更しても前の曲のデータが取得される場合があるので取得ボタンとツイートボタンの2種類を実装したかったので「ui」モジュールを使ってウィジェットにした(かった)→後述
  4. (本題)アートワークも一緒にツイートしたかったのでゴニョゴニョ→次章

※Todayの所にウィジェットを表示するのが最終目標だったが、外部モジュールをimportしようとするとエラーが発生するので諦めた。アプリ内で実行すると動作するのでそっちで妥協した。

アートワークをpng形式で取得したかった

.valueForProperty_("artwork")で曲名、アーティスト名、アルバム名のようにそのまま画像データが取れると思っていたが型はMPMediaArtworkだった。

.imageWithSize_(CGSize(1000, 1000))でUIImage型に変換。しかしui.Image型とは別物なので「objc_util」モジュールのuiimage_to_png関数でpng形式のbytes型を取得し、「PIL」モジュールを使い保存。

CGSizeの引数1000はとりあえず設定した値なので変更しても問題ありません。

アートワークの画像サイズが1000x1000を下回っていた場合は最大サイズで保存され、上回っていた場合は設定した値のサイズで保存されます。

f:id:chun37:20180622040246j:image

完成

f:id:chun37:20180622040722j:image

実行するとこんな感じ

Getして確認してTweetを押すとツイートされます。

ツイートするとこんな感じです。

作成したプログラムはGistに上げました。

tweetメソッドのtext変数でツイートするテキストのフォーマットを編集してください。

TwitterAPIのKey類はご自分でやってください。

私はiPhone6sを使っているので解像度の違う端末をご利用の方は最後の方のframeあたりの数値を弄ってください。

3DTouch搭載端末をご利用であれば3DTouchのショートカットに設定するとファイルを探して実行する手間が省けるので楽になります。

f:id:chun37:20180622040158j:image

objc_utilは難しい

「objc_util」モジュールは非常に難しいと感じた。

Objective-Cを全く理解していない状況だったがAppleのドキュメントを見て少し理解を進めた。

Pythonista 3の作者様が「objc_util」モジュールを用意してくれたのはありがたいがPythoniOS周りを触るものではないと感じた。

あとがき

これであなたもTwitterにたくさんNowPlayingしましょう。

1ヶ月以上悩んだ末に完成したので私のように悩んで時間を無駄にする人が減ればいいなと思いました。

Todayの所で外部モジュールが使えないのは不便だなあと感じました。

コンテキストメニューからVisual Studio Codeで開くを追加する

最近Sublime Text 3からVisual Studio Codeに乗り換えた人間なのですが、使おうと思って入れたわけではなく過去の自分がなんとなく入れたままなので新規インストール時に設定出来る コンテキストメニューの「Visual Studio Codeで開く」 が追加されていなくてどうしたもんかと思いレジストリをちょいちょいしたのでメモ 誰かの助けになれば良いかも
Sublime Text 3のコンテキストメニューのキーを参考にしました)

やり方

  1. 「Winキー+R」を押し、「regedit」を入力し、Enterでレジストリエディタを起動
  2. 「HKEY_CLASSES_ROOT\*\shell\Open with VSCode\command」キーを作成
    • Open with VSCodeの文字はメニューに表示したい文字を入力してください
  3. commandキーの値に「C:\Program Files\Microsoft VS Code\Code.exe "%1"」

WS000267.JPG

このような感じになればOK

使ってみるとこんな感じ