Posts

  • 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
  • Magic Cauldron: Harry Potter Themed Gender Reveal Party - #Aurdino

    Earlier this year, we had a very fun filled Harry Potter themed gender reveal party. For the reveal, I built a Magic Cauldron which would reveal the gender. Check it out for yourself! For this I needed: A Cauldron. WS2812B LED array. Aurdino UNO. Bread board and jumper wires. Dry ice. Kasa Smart bulbs I will go over in the following sections The Mist.

  • Kakashi: The Copycat Robot - #Aurdino #image processing

    In this post, I want to share about "Kakashi: The Copycat Robot"—a fun side project I built a few years ago. The name is inspired by the famous character from Naruto, Kakashi Hatake, also known as the Copycat Ninja.The goal of this robot was to mimic Kakashi's ability to copy movements—though, of course, in a more limited way. Check it out for yourself!Here are the things I used to build

  • Neural network inference pipeline for videos in Tensorflow - #Deeplearning #Tensorflow

    Just as we saw a huge influx of images in the past decade or so, we are now seeing a lot of videos being produced on social media. The need to understand and moderate videos using machine learning has never been greater. In this post, I will show you how to build an efficient pipeline to processes videos in Tensorflow.  For simplicity, let us consider a Resnet50 model pre-trained on

  • Finding Where's Waldo using Mask R-CNN - #Deeplearning #ML

    When I was a kid, I really loved solving Where's Waldo. There were few books (it used to be called Where's Wally) in our school library on which I spent hours finding Waldo. For people who do not know what it is, basically Waldo - a unique character is hidden among hundreds of other characters and you have to find him in all the chaos in the image. Now that I am too old to be solving it and

  • Higher level ops for building neural network layers with deeplearn.js - #Deeplearning #javascript #ML

    I have been meddling with google's deeplearn.js lately for fun. It is surprisingly good given how new the project is and it seems to have a sold roadmap. However it still lacks something like tf.layers and tf.contrib.layers which have many higher level functions that has made using tensorflow so easy. It looks like they will be added to Graphlayers in future but their priorities as of now is to

Thursday, 30 October 2014

How to mount NTFS External Disk in write mode in OS X Yosemite

This works for Mavericks also :)

It is not possible by default to mount a NTFS External Drive in write mode on OS X since Mavericks. There is a complex way to do this. In order to make it simple for you, I wrote a script which does it.

First you need to install Xcode and Homebrew. Google how to install them :P

Download this script

#!/bin/bash
# remove fuse4x and install ntfs-3g and osxfuse
brew remove fuse4x
brew install ntfs-3g
brew install osxfuse
# replace the old one
sudo mv /sbin/mount_ntfs /sbin/mount_ntfs.old
sudo ln -s /usr/local/Cellar/ntfs-3g/*/sbin/mount_ntfs /sbin/mount_ntfs
# osxfuse stuff
sudo /bin/cp -RfX /usr/local/opt/osxfuse/Library/Filesystems/osxfusefs.fs /Library/Filesystems/
# make it setuid program
sudo chmod +s /Library/Filesystems/osxfusefs.fs/Support/load_osxfusefs
# sign unsigned kext
sudo nvram boot-args="kext-dev-mode=1"

Then do this:
chmod +x ntfs_write_mode_enabler
./ntfs_write_mode_enabler

Now connect the driveIn Mavericks you will get a warning “Kernel extension is not from an identified developer”. You are good to go if you click OK. However, if you are using Yosemite, you have to restart your system to load the kernel extension. For more on that read this.

In Yosemite you might get the following error if you are updating old osxfuse. As we have enabled developer mode which allows you to run unsigned kext, it will not be a problem.

osxfuse: OS X Mavericks or older is required for this package.

OS X Yosemite introduced a strict unsigned kext ban which breaks this package.You should remove this package from your system and attempt to find upstream binaries to use instead.

Uninstalling


Execute the following command to replace the modified NTFS mounter with the original one

sudo mv /sbin/mount_ntfs.old /sbin/mount_ntfs

Loading unsigned kernel extensions on Yosemite

Since Mavericks, OS X started checking signatures of kernel extensions. However unlike in Mavericks, loading unsigned code to kernel is disabled in Yosemite (in Mavericks only a warning, “Kernel extension is not from an identified developer” was displayed). It is required to sign kernel extensions using the Developer ID obtained after enrolling in Mac Developer program. With Yosemite still in beta, it is hard to find signed kernel extensions other than the ones officially released by Apple. 

You will get this error when you try to load unsigned kext:

Diagnostics for [unsigned kext]:
Code Signing Failure: not code signed
ERROR: invalid signature for [unsigned kext], will not load

This being said, it is possible to sign all unsigned kext by doing this:

sudo nvram boot-args="kext-dev-mode=1"
Restart to get all the kext running!

Wednesday, 29 October 2014

Porting from Eclipse to Android Studio on mac

First download android studio from here.

Install Android studio from the .dmg file as usual

Now, before opening Android studio, open the terminal and delete the sdk which comes with it.

cd /Applications/Android\ Studio.app
rm -rf sdk

Now create a link of your old sdk in that folder

ln -s [absolute path to old sdk]  /Applications/Android\ Studio.app/sdk

Now open Android studio like any other app and open your existing project. You are good to go!


Or follow this to migrate your eclipse project to gradle!

Monday, 6 October 2014

How to fix blurry windows on retina display on mac

You might've observed that some third party apps have blurry windows on mac. This is due to the fact that those apps are not making use of the retina display introduced by Apple sometime back. I found a simple way to fix this using an app called Retinizer. Simply drag and drop the app (.app file from Applications folder) to its window to "Retinize" the app!

DOWNLOAD: http://retinizer.mikelpr.com/


Sunday, 5 October 2014

The curious case of deleting .nomedia file

Deleting .nomedia file not enough to make a folder visible in android gallery

TL;DR: After removing .nomedia file, add/delete some file in that folder.

You might probably know that if you want to hide a folder from gallery all you have to do is create an empty file called .nomedia. This will make sure that the media scanner will skip that folder.

Sometime back I did this when I wanted to hide the Whatsapp folder from gallery. Now I changed my mind and want Whatsapp folder to show up in the gallery. So I did like any other guy would do -- I deleted .nomedia file from that folder. But this didn't work.

If I had any android version prior to Kitkat, I could've just run media scanner from some app. Unfortunately after Kitkat this wouldn't work (They changed how media scanner works to save battery).

Then I tried renaming the folder (after deleting .nomedia file). Magically, all the images started displaying in the gallery. However, I couldn't afford changing the name of the folder.

I realized that post jellybean, media scanner updates the media index only when there is a change in the folder. So, I just added a new image to that folder manually. It worked like a charm!

NOTE: If the folder is on sdcard, you can just remove the sdcard and put it back (after removing .nomedia file) to run media scanner.