大海で生きたいマンのブログ

大海で生きたいな〜と思い、行動したことを残していくブログ

リモートでインターンをすることについて

f:id:ibuki0315:20180821173239j:plain

 

 

こんばんは。

 

今回は、自分が沖縄にいながら東京の企業でインターンをしていることについて書こうと思います。あくまで自分の主観で話そうと思うのでご了承ください🙇(以下、リモートインターンと言う。名前があっているかはわからないw)

 

そもそも何をしているのか

東京のインターン先では主にWeb開発をやっています。流れとしては、インターン先のエンジニアの方からIssueをもらって、それをこなしてレビューをお願いするというごく普通の開発です。笑

ちなみにお金の出る有給インターン。お金をいただきつつも、技術について学ぶことができるという最高の環境なのです。笑

 

どうしてやることになったのか

今年に入ってから食のサービスを自分でもやってみたいな〜と思い始めていろいろ調べていく中で、インターン先の方のツイッターを見つけたのが最初のきっかけ。

当時はまだ本リリースされていなかったのですが、サービスの紹介資料を見て、すごくいいサービスだなと思いました。この仕組はすごい!世の中を変えそう!と感動したのを今でもはっきりと覚えていますw

そしてその会社のwantedlyにたどり着き、ちょうどエンジニアのインターンを募集しているのをみつけました!

 

 

...が!

 

 

そこで応募はしなかったんですよね〜wというのもそのwantedlyの文言が、「最強のエンジニアインターン求む!」的なことが書かれていて...

当時の僕のスキルセットは

- Rails歴そろそろ1年

- Rails Tutorialをなんとか1周

- ProgateでJS,JQueryをちょっとかじった

- 上記の学んだことをアウトプットするために簡単なSNSを作ってみた

ぐらいだったので、最強かぁ。なんかハードルが...的な感じで最初は断念しました。

 

 

すると、沖縄でお世話になっているエンジニアの方に、「紹介しようか?」と聞かれて、とりあえずお願いすることに...!この方にはそのインターン先の企業に興味があるということを喋ったりもしていたのですが、まさかこういうことになるとは...!と当時の僕はびっくりしていましたw人のつながりには本当に感謝しなきゃですね。

 

そしてTwitter経由で紹介していただき、Githubのアカウントのリンクを投げるとまさかの会いたいという流れに...!ちょうどその頃自分も東京に行くことが決まっていたので、すぐに会うことになりました!

 

そして食事をしながら業務について話して、最終的にはインターンとしてjoinすることになりました。相手側の大きな決め手としては、「開発したSNSのコードをみていけるなと思った」とのこと。

 

話は少しそれますが、最初のエンジニアのインターンで、多くの方が思うであろうことは、「どこまでのスキルが企業から求められるか」だと思います。ですが、学んだことをまずはプロダクトとしてアウトプットしてGithubにオープンにしておくと、インターンできるところはあると思うので、おすすめです!

 

こんなトントン拍子で話が進んで良いのかと思いつつも、はじめての開発インターンがリモート...できるのかな?と若干の不安もありました。

 

ですが、インターン先のエンジニアの方の配慮が手厚く、今ではなんとかやってこれているという感じです。

 

僕が思うリモートインターンの良いところ、悪いところ

今のインターン先で良かったなと思えることは主に、

 

- 実際に仕事をしているエンジニアの方からコードのレビューをもらえるので、開発しながら学べる

- 実際に会社として世に送り出すサービスの開発に携われること

- 質問の質をどうすれば高められるか考えなければいけないこと

- 自分で働く時間、場所を決められること

 

ですかね。最初の二つはリモートじゃなくても得られることだとは思いますが、最後の二つはリモートならではなんじゃないかなと思います。

基本テキストベースでコミュニケーションをとるので、ポンポン疑問に思ったことを聞いてしまうとそれだけで相手の時間を相当奪ってしまうことになるので、なるべくは一つの質問でどれだけ多くのことを得られるのかを考えながら聞くようにしていました。

 

続いて悪いと言うか、難しいなと思うところが

- 企業全体の温度感が分かりづらい

- 社員さんたちがいつ何をしているのか全く把握できていない

- レビューをいつでもすぐにしてもらえるわけではないので、ちょっと不安なときも

- 自分の力でできないことがあると、ただただ相手の時間を奪いがち

 

ですかね〜。まあ主に自分自身に問題があるのですが、完全リモートは自分だけなので、インターンとはいえある程度は自分でこなさないといけない。しかし、最近はタスクのレベルが上ってきて自分がなかなかついていけず、相談もあまりできていないという状態...

つまり何が言いたいかと言うと、あらゆるタスクをこなせる力がなければ辛いことも多いということです。

 

 

最後に

まあそんなこんなで最近はどういうふうに関わっていくのかちょっと悩んだりもしています。笑

なので、9月に東京に行って直接相談しようと思います!悶々としていても何も進まないですしね〜。

あとはこの夏休みで自学習する時間をもっと取って、スキル向上に励んでいきたいと思います!

最近の色々(かなり久々)

本当に久しぶりの更新。最後に更新したのが、春休み明けなので、約3ヶ月半ぶり。笑

 

先に、なんで最近更新しなかったのかを言っておきたいと思います。笑

 

ここ最近、いろんな方と接したり、SNSで多くの人の発言を見る中で、「自分が発信できることって何も無いんじゃないか?」と思うようになり、ブログを書くことのハードルを勝手に自分で上げてしまっていたのが、更新しなかった理由です。

 

 

しかし、最近ある人に、「人と比べて何も行動出来なくなるのは、1番悲しいことだよ。人と比べずに、自分の言葉で話すことが大事。」という言葉を頂き、本当にその通りだと思い、ほんのわずかなことでも、自分が得た気づきを、もう一度ブログに残そうと思えるようになりました!

 

これからは、稚拙な文章ではありますが、なるべく高い頻度で更新したいと思っていますので、改めてよろしくお願いします🙇‍♂️

 

というわけで、これから自分の気づきを残す前に、今回は3ヶ月半自分が何をしていたのかを少し紹介しようと思います。

 

インターンでやっていること

僕は今、一応インターンを3つやっているのですが、3つとも全く違う仕事、全く違う分野ということもあり、様々な刺激を受けることができ、楽しく働かせていただいてます。

 

このインターンは3月から入ったので、もうかれこれ4ヶ月…早いなぁ笑

ここは東京のスタートアップなのですが、エンジニアのインターンということで、沖縄からリモートで参加しています。

初めてのエンジニアのインターンがリモートって、どうなんだろうと最初は思っていましたが、社員のエンジニアの方がとても手厚くサポートして下さり、丁寧にコードレビューもしてくださるので、本当に恵まれているなぁと感じます。

最近は、Web APIの開発の勉強を社員の方にサポートしていただきながら進めています。

今の開発のフェーズに入ってからは、なかなか価値を生み出せてないので、サービスにもっと貢献するためにも技術力をもっと磨いていきたいと常々思います。

 

ここでは、農業に関する新規事業の企画、営業のお仕事を少しやらせていただいてます。

ここでインターンをさせていただく中で、他の人と協力し、意見を言い合って、サービスを進めていくのは、やはり楽しいなぁと感じます。

とはいえ、農業のことについて自分がまだ知らなさすぎるので、実際に農業に携わっている方にこれからもっとヒアリングしていきながら、学んでいきたいと思います。

 

ここは、実際に自分が去年、選抜生としてお世話になったところで、今はインターンとしてサポートする側としてジョインしています。

一応サポートする側として学生と関わっているんですが、逆に自分が学ばせてもらうことも本当に多く、サポートする側とされる側ではなく、一緒に学んでいるような感覚です。

ここでは、自分が学んできたこと、これから学ぶことを通して、学生がなにか行動したいとなった時に、サポートしていけたらなと思います。そのためにも自分自身がもっと力をつけていかねば!

 

最後に

こんな感じで、インターンをやらせていただいてます。

学生なのに、インターンばっかじゃんと思うかもしれませんが、ちゃんと自分の勉強もやってますよ笑

卒業研究であったり、大学院入試もあるので、その勉強もしていかなきゃなぁという感じです。

では、今日はこれぐらいで。

 

大学生活最後の春休みをふりかえってみたー

とってもお久しぶりです。1ヶ月以上も放置していました。

今日で春休みも終わりということで、この長いようで短かった春休みを振り返ってみようと思います。

Web×IoTメイカーズハッカソン

ibuki0315.hatenablog.com

このブログでも書いたのですが、結構自分の中では大きな経験をしました。 今までなんとなく、やりたいなーと思っていたIoTが、実際やってみると、「あれ?なんか違うぞ?」と思い始めて、結果的にこれは自分のしたいことではないなーと気づけたので、とても大きな収穫でした。

何もしないで、あれはやらないほうが良いかなーとか思うよりも、興味が少しでもあれば、まずは飛び込んでそれから続けるかどうか判断することが大事なんだなーって個人的に思いました。

沖縄Ruby会議02

3/10にあった沖縄Ruby会議に、お世話になっている先輩のお誘いもあり、登壇してみました。

しかし、これは自分の中ではかなりの失敗でした。笑 このイベントが終わったばかりの頃は、久々に「やらなければよかったー」とすら思いました😅

というのも、登壇する皆さんの多くはRubyで実際に仕事をしている人で、話しているレベルについていけないぐらいでした。それに、自分は萎縮してしまい、完全にビビった状態で登壇し、ピッチしてしまいました。

これは本当に良くなかったなーと自分でも反省。やっぱり自分が楽しいとまず思わないと良いプレゼンなんてできるはずないのに...w

でも今は、早いうちにこのような経験ができて良かったなーと思います。
苦い経験にはなりましたが、この日からもう一度RubyやWebの、基本的なところに立ち返って勉強するようになりました。

Ryukyufrogs事務局の東京出張についていった

Facebookに日ごとにまとめているのですが、昨年お世話になったRyukyufrogs事務局の山崎さんとひらりさんの東京出張についていき、自分は3日間、協賛企業の方やサポーターの方々に、9期生としての研修報告と感謝をお伝えさせていただきました。

今思い返して改めて思うのは...

本当に行ってよかった!!!

今までお世話になった人と改めてお会いしたり、新しい出会いもあり、この3日間をきっかけに更に視野が広がったと感じています。

こんな実りある東京旅行は初めてでした😂(体重も過去最高に増えましたが)また近いうちいきたいなー東京。

CODE BASEプログラミング教室1期生卒業!!

約3ヶ月間お世話になったCODE BASEのプログラミング教室を無事卒業しました。

そのプログラミング教室では主にPHPを学ぶ講座内容だったのですが、僕は普段から勉強しているRubyで最後の卒業制作にも取り組みました。 というのも、まだ自分はRubyもそこまでできる方ではないので、言語をたくさん勉強すると言うよりは、一つの言語をもう少し深めたいと思ったので、その判断をしました。

最終日の卒業制作の発表では、Railsで作成した以下のWebアプリを発表しました。なんとか形にできて良かったです。笑

Develotter | サービスを創る人のためのSNS

この講座で学んだ学習方法などは今後も実践していきたいですね〜。 講師の方々、本当にありがとうございました!

最後に

春休みの主な出来事は以上ですかね。そこからは、インターンの業務に主に取り組んでいました。 Railsでの開発を主にやらせていただいているのですが、

ひとことで言うと本当に楽しい!!!!

インターンに入る前から、職についてのサービスを調べる中で、良いサービスだなーとずっと思っていたので、それに携われているというのと、学びたいことを学ばせていただいて、しかもお金をいただけるという...

こんなに楽しくて良いのかと言うぐらい、業務が楽しいです😂

インターン先の方からも、「これからも貪欲にうちのプロダクトを使って貪欲に成長していってね。」と言って頂いたので、いい意味で使って、頑張っていきたいと思います😊

そして明日から最高学年の4年次のスタート。研究室のゼミも始まるので、楽しみ! と同時に3ヶ月後に控えている大学院進学試験にむけても少しずつ準備をしていこうかなと思います!

以上です!新年度も何卒よろしくお願いします😆

初めてのハッカソン!得たことは...

こんにちは!最近夜中の3時以降からしか寝れない、生活リズムが乱れまくっているibukiです。

 

 

今回、初めてハッカソンに参加したのでそこで得たことについて書いていきたいと思います。

 

 

まず結果は...

 

 

 

 

 

 

目も当てられないひどい結果となってしまいました。完成度としては10%ぐらいのものしか作れませんでした...

 

 

なんでこうなったのか、原因はただ一つしかありません。

 

 

 

 

 

準備不足。

 

 

 

 

ほんと、これに尽きると思います。というのも、前の講座から1ヶ月以上の準備期間があったのに、何も準備をしてこなかった。実装のための備品も、当日の調達。

実際に開発をしたのも本番が初めて。

 

 

 

技術面も、気持ちもすべてが準備不足でした。

 

 

 

 

今日のハッカソンが終わってから、自分の中で疑問が生まれました。

Webだけでなく、IoTの実装もしないといけないという大変な開発の準備をなんでしなかったのか。という疑問です。

 

 

 

 

本当に自分がしたいことなら、絶対準備を怠らなかったはずなのにどうしてだろう...?

 

 

 

 

そして気づきました。今回のハッカソンの開発に「やりたい!」という熱意がなかったことです。

 

 

 

 

正直なところ、講習の時から薄々気づいてはいました。

 

 

 

それは、Webの勉強をとにかくしていきたいし、自分の作りたいものを作れるぐらいのスキルを身に着けたいけど、IoTに関しては勉強をしていきたいという熱意がなかったことです。

 

 

 

 

そこに気づくことが出来たので、今回のイベントに参加したことは、悔しさはあっても後悔はないのです。

 

 

 

 

なぜなら、「やってみた」ことで自分の「好きではない」ことに気づくことが出来たからです。

 

 

 

 

そしてやはり、

 

 

 

 

 

自分の「好きなこと」にとことん振り切って行動することが大事

 

 

 

 

ということを改めて実感しました。

 

 

 

なのでこれからは、今まで以上に自分の好きを大切に行動していきたいと思います!

 

 

 

いや〜やってみるって大事だなぁ。

 

 

 

あ、最後にブログに関してですが、

 

 

 

技術系のことは完全にQiitaに移行することにしました!!こちらも初めてのこと...

 

 

 

 https://qiita.com/puremoru0315

 

 

やってみると自分の知識のアウトプットにもなるので、書くのが楽しくて仕方ないです。笑(まだ二つしか記事ないけどw)

 

 

 

なのでこのブログは、これからは自分が挑戦したことについて、学んだこと、感じたこと、悔しかったことなどを残していけたらと思っています。

 

 

これからもどうぞよろしくお願いします!読んでくださりありがとうございました!

最近あった色々

少し久しぶりになってしまった。今回は、ここ最近で自分の周りで起こったこととか、気づき、やったことなんかを残します。

デザインのことが少し分かるようになった

今までデザインのことは全く勉強せず、enPiTのときの開発もバックエンドの実装を担当してたので、ビュー周りの部分が特に激弱でした。
でも、最近火曜と木曜に通っているプログラミング教室で、Bootstrapの使い方をようやく学んで、デザインセンスのない自分でも満足のいくものができるようになりました。作ったものは、これから来月までに作る予定のWebサービスのトップページ。それと新規登録画面とログイン画面のページ。
作ったばかりのときは、こんな俺でもこんなデザインのものができるんだなーと少し感動してましたw
(もっと早くデザイン周りのことも勉強していれば、enPiTでも活かせたのかなーと思ったり。)
後はこれをRailsに組み込んでいきたいなー。それができたら備忘録として書こうかな。

Rails Tutorialの1周目が終わった

なんとかtutorial1周目が終わりました。Ruby,Railsをやり始めて半年ちょっとぐらいにはなるんですが、触り始めた頃は挫折したtutorial。本当に僕にとってはtutorialではなく、、、
あれからProgateや実際の開発でもRailsをやり続けていたので、最近また挑戦し、今日ようやく1周目完走できました〜。
とは言え、Userの認証のところぐらいからふわっとしか理解できていないですw
やってみてわかったことは、特にDBの知識がないということ。ココらへんもべんきょうしないとなーという感じ。
でも、やってみて更に勉強する必要があることに気づいたので、とりあえずやってみるってとても大事だなと実感しました。

ここまでが技術系のこと。ここからは自分自身の変化や気付きについて話したいと思います。

今までやってきたサービスの取組みについて

このサービスというのは、僕が去年に半年間ずっと取り組んできた、車椅子の利用者のためのサービスのことなのですが、これを進める活動をやめるという決断をしました。
理由はいくつかあるのですが、一番大きな理由が少し自分たちよりも早く、同じ世界を目指してサービスをローンチしている方がいたので、そのサービスが進んでいくことが自分たちの望む世界に近づくと判断し、「やらない」決断をしました。

ちなみに今日こんな記事を目にしました。とても嬉しいですね。これから東京が変わるかも...?

headlines.yahoo.co.jp

そして改めて自分について深掘りしていきました。
その結果、やっぱり自分の人生をかけられるような、課題を解決したいと思えるようなサービスを考えたいなと思いました。

自分の軸について考えてみた

自分は本当は何がしたいのか、根っこの部分を考えたときに出てきたのは、「人と人が新たにつながり、それによって更に人が幸せになれる場を作りたい」というものでした。
この軸が見えたのがここ最近で一番大きい変化。これが見えてから、精神的にすごく前向きに過ごせている気がします。

じゃあどういう手段で?

どのようにそれを作っていくのか、考えた時、自分の一番の関心事に一度目を向けてみようと思いました。その結果、、、 でしたw

少し前の自分なら完全に「ファッション」だったのですが、最近では完全に「食」。食べているときが幸せですね笑

他にも、ファッションやヘルスケア、教育が上がったのですが、やはり一番自分の中で順位が高いのは「食」ですね。 なので最近は技術系の勉強しながら、食関係でこんなのあったら良いなというところから考えたりもしてます。(1個、これだ!これほしい!って思ったものが今年から正式にローンチされるものもあったり、、、笑)

まとめ

まとめると、将来のやりたいことを考えると、プログラミングの勉強は必須ですし、やってて楽しいし一番自分の中で優先順位が高いけど、スタートアップのイベントとかにも機会があればどんどん出たいなーというところですね。
いつかまた自分の考えるサービスの活動をできるようにどんどん準備を整えていきたいと思います!

おまけ

こういうことを言ったりすると、たまに周りからなんでそんな楽観的なこと言えるの?と聞かれ、自分でもその答えが出せなかったのですが、最近これを見てその答えがわかりました。

podfanatic.com

これを紹介してくれたいつもお世話になっている先輩からお前は圧倒的に「後者」だと言われました。まさにそのとおりだなーと。
これ本当に面白いので、ぜひ聴いてみてください!iPhoneならPodcastで聴けるので!

最後に

frogsが終わってから「変わったよね」とよく言われ始めて、自分ではここ最近までわからなかったのですが、最近になってようやくわかり始めた気がします。
で、それに伴い、他の人から壁を作られていると感じたり、人間関係が変わってきていると最近感じるようになりました。

このことでほんの一瞬悩むこともありましたが、今は「そんな人しーらねw」ぐらいのスタンスで過ごしています笑
ある意味、切り捨てている感じなので、これがいい方向に変わったのか、悪い方向に変わったのかはわかりませんが、このスタンスになったことで、人間関係において悩む時間が殆どなくなって幸せですwww

いやー人って面白いですね。ではでは。

Arduino触って、Railsで無理やり動かしたり、その他いろいろ遊んだ話

Web×IoTメイカーズに参加してきた

インフルから完全復活したibukiです。
この土日、Web×IoTメイカーズの研修に参加したので、そこでやったいろいろを残していきます。

まず二日間...

非常に楽しかった!!今までやるやる詐欺を決めていたArduinoを初めて触ることが出来て、IoTプログラミングの学習の第一歩を踏み出せた気がします!!!
安定のLチカや、スイッチでポチポチしたり、温度センサーで室内の温度を測定、Slackの指定したチャンネルに室内温度を通知、光センサーで光測定したりとか、自由気ままに遊ばせていただきました。笑

基本的にNode.jsで書いて動かす感じだったので、これから真面目にちゃんとJavascript勉強したいなーとも思いましたね。

参考記事

・JavaScriptでArduinoをコントロール ― 第1回 Lチカ(LEDチカチカ)させてみよう!
・JavaScriptとArduinoではじめるIoT入門 〜Johnny-Fiveで温度センサーを使ってみる〜
・JavaScriptでArduinoをコントロール ― 第2回 スイッチ・センサーからの入力値を取得しよう!
・Node.jsで光センサー(LLS05-A)/CdSセル(GL5528)の値を読み取る

RailsでNode.js力づくで呼び出してArduino呼び出してLチカ

タイトルを見ると、は?って思う人も多いのではないでしょうか。それぐらい鬼畜なことをしてみました。笑

このメイカーズの研修は結構自由気ままにやっちゃって〜みたいな雰囲気で、時間が余ったのもあって試しにしてみました。

以下がcontrollerのコード

class LedlightController < ApplicationController
  require 'open3'
  
  def index
  end

  def create
    argv = params[:light]
    Open3.capture3("node arduino.js #{argv}")
  end
end

そして以下がviewのコード

<h2>LEDのON/OFF</h2>
<%= form_tag("/tempreture/create") do %>
<button type="submit" value="ON" name="light">ON</button>
<button type="submit" value="OFF" name="light">OFF</button>
<% end %>

最後にこれがNodeのコード

var five = require("johnny-five");
var board = new five.Board();

board.on("ready", function() {
  if(process.argv[2] === "ON"){
  (new five.Led(13)).on();
  }else{
  (new five.Led(13)).off();
  }
});

これでどうなるのか。

結論から言うと一応動きました。一応。
ただこれだとcapture3で無理やりnode arduino.jsっていう外部コマンド実行してなんとか動かしているって感じなので、毎度ON/OFFさせるたびにNode実行しなくちゃならないので、最初のチカチカが不可避なんですね。

そもそもこれRailsで動かす必要まったくないんだよなー。この後実際にNode.jsとHTML単体ずつで動いたし...
とは言え、Railsもまだまだ初心者なので、他にもっといいやり方があるのかも...? 知っている方ぜひ教えてください。笑

この後もNodeとHTMLでWebから色指定してLED光らせたりとかもして本当に楽しかったですね。
また、1ヶ月後にはハッカソンもあるので、Arduinoもっと勉強しないとなー。

とりあえず今後やることとしては
・引き続きRuby,Railsスキルアップ
・Laravel始めるための色々
ArduinoJavascript(主にNode.js)

って感じか。正直自分のキャパとか全く考えずにとりあえずやってみるかってスタンスなので、楽しいけどいつか潰れるのかと思うとちょっと心配。笑
まあとりあえず今はこのスタンスで勉強していきやす\(^o^)/

以上です〜読んでくださってありがとうございますm( )m

課題があったので(実質)初めてPython3でOpenCVを触ってみた

正月にDSのポケモンウルトラムーンを買ってのんびり過ごしていたら、学科の皆さんのツイートを見て
「はっ!!課題!」となったので急いで課題をやることに...
てことで、実質初めてのPython3×OpenCVを課題を通して触ったので、調べたこととかを載せてみようと思います。

とある講義の課題

課題の内容

「実写写真画像を加工してマンガ風の画像を生成するプログラム」を作成しなさい。
⇒実現に必要な機能をリストアップしてからコーディングすると良い。また、吹き出しや効果音等も好みに応じて追加して良い。できるだけカッコ良くマンガ化すること。 余力のある者は4コマ漫画にしても良い。ただし、4コマ漫画として面白くなければならない。

はい...とのことです。ギャグセンスには自信がないので、純粋に一つの画像を漫画風にしようと思いますw

今回漫画風にするのはこれ!!

f:id:ibuki0315:20180102180428j:plain:w300

はい、私の愛するpepsi。(これを写すと、高血圧だのとうるさい人達がいるのですがそんなのは気にしない。)

これを漫画風にするにあたり、Python3OpenCVを使うことにしました。手っ取り早く。
いつもならこの講義の課題はJavaでゴリゴリ書くのですが、今回はササっとやりたいのと、前期の実験3の画像処理班ではすごく中途半端に触ってしかいなかったので、やることにしました。
備忘録として、今回新しく学んだことを載せていきやす。

参考記事

・【Python/OpenCV】写真・画像を漫画風に加工
・【画像処理】写真を漫画風に加工する原理・仕組み

cvtColor

漫画風にするにあたってまずは、入力画像とスクリーン画像をグレースケール変換しないといけなかったので、OpenCVのcvtColorメソッドを使いました。

gray = cv2.cvtColor(src, cv2.COLOR_BGR2GRAY)

こんな感じで。引数に入力画像の変数と、cv2.COLOR_BGR2GRAYを与えればグレースケール変換ができるというメソッド。

resize

次に、入力画像とスクリーン画像の大きさを統一する必要があるので、OpenCVのresizeメソッドを使いました。

screen = cv2.resize(screen,(gray.shape[1],gray.shape[0]))

今回はこのように。スクリーン画像の変数と入力画像をグレースケール変換したgrayの横幅と縦幅の値を渡すことで、スクリーン画像の大きさを入力画像に合わせた。

Canny

次に、漫画風にしていくために、輪郭を検出する必要があるので、ここでもOpenCVのメソッド、Cannyメソッドを使いました。

edge = 255 - cv2.Canny(gray, 80, 120)

こんな感じで。引数にそれぞれ、入力画像、最小閾値、最大閾値を与えてエッジ検出をするメソッド。今回は入力画像にグレースケール変換した画像の変数、最小閾値、最大閾値をそれぞれ80、120にしてエッジ検出。
しかし、これでは真っ黒に輪郭が検出された画像のままなので、色を反転するために、画素値255の白から差し引く処理を追加で行っている。

bitwise_and

最後に,bitwise_andメソッド。このメソッドを使う前に、入力画像を白、黒、灰色の三値化を行った前提で。 以下のように用いた。

cv2.bitwise_and(gray, edge)

引数に配列をそれぞれ与え、ピクセル毎に論理積処理を行うメソッド。今回は、三値化をした画像grayとエッジ検出をして白ベースに反転させた画像edgeを引数に与えて、論理積を取る。これで目的の漫画風な画像にしている。

結果としてはこんな感じ。 f:id:ibuki0315:20180102185557j:plain:w300

最小閾値と最大閾値の間の値を持つところ(灰色の部分)を最初は、スクリーン画像に置き換えてたんだけど、なんか嫌だったので結局スクリーンなしの画像のほうが良さげ。ただもう少しその部分は工夫ができればよかったかも。
とりあえずこんな感じで、楽しく課題ができた一日でした〜。