Ecoer Logo
VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS100.00%
REPUTATION PROGRESS69.14%
Net Worth
0.783USD
STEEM
0.000STEEM
SBD
0.217SBD
Own SP
11.704SP

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.000STEEM
STEEM POWER
Own SP
11.704SP
Delegated Out
0.000SP
Delegation In
0.000SP
Effective Power
11.704SP
Reward SP (pending)
0.000SP
SBD
sbd_balance
0.217SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.000 STEEM",
  "vesting_shares": "19037.130578 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "0.000000 VESTS",
  "sbd_balance": "0.217 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

nameferumflex
id158734
rank112,816
reputation1990887483
created2017-05-14T04:15:27
recovery_accountsteem
proxyNone
post_count8
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2018-11-07T12:02:51
last_root_post2018-11-07T12:02:51
last_vote_time2022-07-01T14:33:51
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power9,414
delayed_votes0
balance0.000 STEEM
savings_balance0.000 STEEM
sbd_balance0.217 SBD
savings_sbd_balance0.000 SBD
vesting_shares19037.130578 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares0.000000 VESTS
reward_vesting_balance0.000000 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update1970-01-01T00:00:00
last_account_update1970-01-01T00:00:00
minedNo
sbd_seconds2,147,958
sbd_last_interest_payment2017-07-13T21:42:36
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "id": 158734,
  "name": "ferumflex",
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7Cek1ERLiixy3ACsqS4tR26pDtTtQD4HJytfiTMce17wawtAry",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM5WCC4we349fvBN9JJdTxoeDWEE3qKWcjZvuB9b1PTqgbb3ZWSm",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6VW5oTvqjTkcmvuWdunpfcmFdXQNrXiwh8YErDY8jLM4BJzYHF",
        1
      ]
    ]
  },
  "memo_key": "STM8gNbzBC7xxKKNUnFnBxEwT57v72R1bt4iGtsnwR5UwySgaatjg",
  "json_metadata": "",
  "posting_json_metadata": "",
  "proxy": "",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_account_update": "1970-01-01T00:00:00",
  "created": "2017-05-14T04:15:27",
  "mined": false,
  "recovery_account": "steem",
  "last_account_recovery": "1970-01-01T00:00:00",
  "reset_account": "null",
  "comment_count": 0,
  "lifetime_vote_count": 0,
  "post_count": 8,
  "can_vote": true,
  "voting_manabar": {
    "current_mana": "17921704589",
    "last_update_time": 1656686031
  },
  "downvote_manabar": {
    "current_mana": "4759282644",
    "last_update_time": 1656686031
  },
  "voting_power": 9414,
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "sbd_balance": "0.217 SBD",
  "sbd_seconds": "2147958",
  "sbd_seconds_last_update": "2017-07-26T08:02:15",
  "sbd_last_interest_payment": "2017-07-13T21:42:36",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.000 STEEM",
  "reward_vesting_balance": "0.000000 VESTS",
  "reward_vesting_steem": "0.000 STEEM",
  "vesting_shares": "19037.130578 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "0.000000 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "withdrawn": 0,
  "to_withdraw": 0,
  "withdraw_routes": 0,
  "curation_rewards": 2,
  "posting_rewards": 354,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "witnesses_voted_for": 0,
  "last_post": "2018-11-07T12:02:51",
  "last_root_post": "2018-11-07T12:02:51",
  "last_vote_time": "2022-07-01T14:33:51",
  "post_bandwidth": 0,
  "pending_claimed_accounts": 0,
  "vesting_balance": "0.000 STEEM",
  "reputation": 1990887483,
  "transfer_history": [],
  "market_history": [],
  "post_history": [],
  "vote_history": [],
  "other_history": [],
  "witness_votes": [],
  "tags_usage": [],
  "guest_bloggers": [],
  "rank": 112816
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
2022/07/02 05:30:09
parent authorferumflex
parent permlinkhi-steemers
authorstrecoza
permlinkredom9
title
bodyПривіт Антон. Раді тебе бачити. Приєднуйся до нас. Разом ми сила!
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #65557478/Trx 24abe9574cee6391b1c64a61b3adb1be5fcd6535
View Raw JSON Data
{
  "trx_id": "24abe9574cee6391b1c64a61b3adb1be5fcd6535",
  "block": 65557478,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-02T05:30:09",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "strecoza",
      "permlink": "redom9",
      "title": "",
      "body": "Привіт Антон. Раді тебе бачити. Приєднуйся до нас. Разом ми сила!",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2022/07/01 14:33:51
voterferumflex
authorzaria56
permlinkmy-town-in-10-pictures-the-way-home-misto-yakogo-nemaye-null-or-25
weight10000 (100.00%)
Transaction InfoBlock #65539647/Trx e9abed4956a7ed27a59c4aa9d3206db98bec0580
View Raw JSON Data
{
  "trx_id": "e9abed4956a7ed27a59c4aa9d3206db98bec0580",
  "block": 65539647,
  "trx_in_block": 15,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:33:51",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "zaria56",
      "permlink": "my-town-in-10-pictures-the-way-home-misto-yakogo-nemaye-null-or-25",
      "weight": 10000
    }
  ]
}
2022/07/01 14:32:57
voterferumflex
authorlhorgic
permlinkcrypto-terminology-or-or-10-payout-to-tron-fan-club
weight10000 (100.00%)
Transaction InfoBlock #65539629/Trx e465cd11c6f5441d4e37d5925af79ad57e5af74a
View Raw JSON Data
{
  "trx_id": "e465cd11c6f5441d4e37d5925af79ad57e5af74a",
  "block": 65539629,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:32:57",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "lhorgic",
      "permlink": "crypto-terminology-or-or-10-payout-to-tron-fan-club",
      "weight": 10000
    }
  ]
}
2022/07/01 14:32:15
voterferumflex
authorolesia
permlinkclub100-the-diary-game-3-date-30-6-2022-or-ostannii-den-chervnya-tomu-sho-tomu
weight10000 (100.00%)
Transaction InfoBlock #65539615/Trx beb6959737fe9f267bce6d41c7d9fd3779d0da26
View Raw JSON Data
{
  "trx_id": "beb6959737fe9f267bce6d41c7d9fd3779d0da26",
  "block": 65539615,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:32:15",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "olesia",
      "permlink": "club100-the-diary-game-3-date-30-6-2022-or-ostannii-den-chervnya-tomu-sho-tomu",
      "weight": 10000
    }
  ]
}
ferumflexcustom json: community
2022/07/01 14:31:12
required auths[]
required posting auths["ferumflex"]
idcommunity
json["subscribe",{"community":"hive-108451"}]
Transaction InfoBlock #65539594/Trx 129e572d2ea7659488d43d5978d09c4a4b7a8966
View Raw JSON Data
{
  "trx_id": "129e572d2ea7659488d43d5978d09c4a4b7a8966",
  "block": 65539594,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:31:12",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "community",
      "json": "[\"subscribe\",{\"community\":\"hive-108451\"}]"
    }
  ]
}
ferumflexcustom json: community
2022/07/01 14:30:15
required auths[]
required posting auths["ferumflex"]
idcommunity
json["subscribe",{"community":"hive-185538"}]
Transaction InfoBlock #65539575/Trx 424e287edbcee1bdf02fa1156a5f214cbb6a8762
View Raw JSON Data
{
  "trx_id": "424e287edbcee1bdf02fa1156a5f214cbb6a8762",
  "block": 65539575,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:30:15",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "community",
      "json": "[\"subscribe\",{\"community\":\"hive-185538\"}]"
    }
  ]
}
ferumflexcustom json: community
2022/07/01 14:29:21
required auths[]
required posting auths["ferumflex"]
idcommunity
json["subscribe",{"community":"hive-137760"}]
Transaction InfoBlock #65539557/Trx 697b4dd5e0657dec6df5d68ea15c1fbc836f126a
View Raw JSON Data
{
  "trx_id": "697b4dd5e0657dec6df5d68ea15c1fbc836f126a",
  "block": 65539557,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:29:21",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "community",
      "json": "[\"subscribe\",{\"community\":\"hive-137760\"}]"
    }
  ]
}
ferumflexcustom json: community
2022/07/01 14:29:12
required auths[]
required posting auths["ferumflex"]
idcommunity
json["subscribe",{"community":"hive-183397"}]
Transaction InfoBlock #65539554/Trx 3e702b7648e809b0426ad2e26f85c5d00e68f293
View Raw JSON Data
{
  "trx_id": "3e702b7648e809b0426ad2e26f85c5d00e68f293",
  "block": 65539554,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T14:29:12",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "community",
      "json": "[\"subscribe\",{\"community\":\"hive-183397\"}]"
    }
  ]
}
ferumflexcustom json: notify
2022/07/01 12:54:45
required auths[]
required posting auths["ferumflex"]
idnotify
json["setLastRead",{"date":"2022-07-01T12:54:44"}]
Transaction InfoBlock #65537677/Trx ea3e83d155097c5ad6db1c7947138e524d2a14b9
View Raw JSON Data
{
  "trx_id": "ea3e83d155097c5ad6db1c7947138e524d2a14b9",
  "block": 65537677,
  "trx_in_block": 6,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2022-07-01T12:54:45",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "notify",
      "json": "[\"setLastRead\",{\"date\":\"2022-07-01T12:54:44\"}]"
    }
  ]
}
steemdelegated 0.000 SP to @ferumflex
2020/05/08 09:20:42
delegatorsteem
delegateeferumflex
vesting shares0.000000 VESTS
Transaction InfoBlock #43193137/Trx 544464c24bb95419dbd29670b85cc0289900310c
View Raw JSON Data
{
  "trx_id": "544464c24bb95419dbd29670b85cc0289900310c",
  "block": 43193137,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2020-05-08T09:20:42",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "0.000000 VESTS"
    }
  ]
}
2019/05/14 06:09:48
parent authorferumflex
parent permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
authorsteemitboard
permlinksteemitboard-notify-ferumflex-20190514t060947000z
title
bodyCongratulations @ferumflex! You received a personal award! <table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@ferumflex/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table> <sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@ferumflex) and compare to others on the [Steem Ranking](http://steemitboard.com/ranking/index.php?name=ferumflex)_</sub> **Do not miss the last post from @steemitboard:** <table><tr><td><a href="https://steemit.com/japanese/@steemitboard/new-japanese-speaking-community-steem-meetup-badge"><img src="https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmRWbAjbeETEaqSPLcpwYX1JN5pZhdPffv4q6DaBs6xvZm/image.png"></a></td><td><a href="https://steemit.com/japanese/@steemitboard/new-japanese-speaking-community-steem-meetup-badge">New japanese speaking community Steem Meetup badge</a></td></tr></table> ###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!
json metadata{"image":["https://steemitboard.com/img/notify.png"]}
Transaction InfoBlock #32892574/Trx 47aae0109dda9e2724efa80cf66f31ac7181022f
View Raw JSON Data
{
  "trx_id": "47aae0109dda9e2724efa80cf66f31ac7181022f",
  "block": 32892574,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-05-14T06:09:48",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-ferumflex-20190514t060947000z",
      "title": "",
      "body": "Congratulations @ferumflex! You received a personal award!\n\n<table><tr><td>https://steemitimages.com/70x70/http://steemitboard.com/@ferumflex/birthday2.png</td><td>Happy Birthday! - You are on the Steem blockchain for 2 years!</td></tr></table>\n\n<sub>_You can view [your badges on your Steem Board](https://steemitboard.com/@ferumflex) and compare to others on the [Steem Ranking](http://steemitboard.com/ranking/index.php?name=ferumflex)_</sub>\n\n\n**Do not miss the last post from @steemitboard:**\n<table><tr><td><a href=\"https://steemit.com/japanese/@steemitboard/new-japanese-speaking-community-steem-meetup-badge\"><img src=\"https://steemitimages.com/64x128/https://cdn.steemitimages.com/DQmRWbAjbeETEaqSPLcpwYX1JN5pZhdPffv4q6DaBs6xvZm/image.png\"></a></td><td><a href=\"https://steemit.com/japanese/@steemitboard/new-japanese-speaking-community-steem-meetup-badge\">New  japanese speaking community Steem Meetup badge</a></td></tr></table>\n\n###### [Vote for @Steemitboard as a witness](https://v2.steemconnect.com/sign/account-witness-vote?witness=steemitboard&approve=1) to get one more award and increased upvotes!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notify.png\"]}"
    }
  ]
}
steemdelegated 1.233 SP to @ferumflex
2019/02/06 13:54:12
delegatorsteem
delegateeferumflex
vesting shares2005.898093 VESTS
Transaction InfoBlock #30111623/Trx a982f1f450df8bbe55d2a216e440a2307034916d
View Raw JSON Data
{
  "trx_id": "a982f1f450df8bbe55d2a216e440a2307034916d",
  "block": 30111623,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2019-02-06T13:54:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "2005.898093 VESTS"
    }
  ]
}
steemdelegated 6.869 SP to @ferumflex
2018/11/26 17:30:18
delegatorsteem
delegateeferumflex
vesting shares11172.631550 VESTS
Transaction InfoBlock #28043947/Trx 17fdce491287d10039e47eb4af8bdb670203bf3a
View Raw JSON Data
{
  "trx_id": "17fdce491287d10039e47eb4af8bdb670203bf3a",
  "block": 28043947,
  "trx_in_block": 41,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-26T17:30:18",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "11172.631550 VESTS"
    }
  ]
}
2018/11/07 12:45:06
voterferumflex
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
weight10000 (100.00%)
Transaction InfoBlock #27491369/Trx f3227a6649ac22f7bee57a9e99d237c5cb6c2bd8
View Raw JSON Data
{
  "trx_id": "f3227a6649ac22f7bee57a9e99d237c5cb6c2bd8",
  "block": 27491369,
  "trx_in_block": 17,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:45:06",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "weight": 10000
    }
  ]
}
2018/11/07 12:16:48
parent author
parent permlinktechnology
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
titleHow to write your own recognition system using python and facenet
body@@ -4465,16 +4465,21 @@ %7B%7D%3Cbr%3E%0A +%3Cbr%3E%0A for file @@ -6919,17 +6919,27 @@ IC)%3Cbr%3E%0A - +%3Cbr%3E%0A %3Cbr%3E%0A %3Cbr%3E%0A &n
json metadata{"tags":["technology"],"links":["https://github.com/davidsandberg/facenet","https://www.tensorflow.org/","https://github.com/skvark/opencv-python","https://www.python.org/downloads/","https://github.com/davidsandberg/facenet#pre-trained-models","https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-","https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8"],"app":"steemit/0.1","format":"html","image":["https://ommmm.com/media/my.jpg"]}
Transaction InfoBlock #27490803/Trx 6b28b05cc98617e514b2b81df341a28f7025256b
View Raw JSON Data
{
  "trx_id": "6b28b05cc98617e514b2b81df341a28f7025256b",
  "block": 27490803,
  "trx_in_block": 35,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:16:48",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "title": "How to write your own recognition system using python and facenet",
      "body": "@@ -4465,16 +4465,21 @@\n  %7B%7D%3Cbr%3E%0A\n+%3Cbr%3E%0A\n for file\n@@ -6919,17 +6919,27 @@\n IC)%3Cbr%3E%0A\n- \n+%3Cbr%3E%0A %3Cbr%3E%0A\n %3Cbr%3E%0A &n\n",
      "json_metadata": "{\"tags\":[\"technology\"],\"links\":[\"https://github.com/davidsandberg/facenet\",\"https://www.tensorflow.org/\",\"https://github.com/skvark/opencv-python\",\"https://www.python.org/downloads/\",\"https://github.com/davidsandberg/facenet#pre-trained-models\",\"https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-\",\"https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8\"],\"app\":\"steemit/0.1\",\"format\":\"html\",\"image\":[\"https://ommmm.com/media/my.jpg\"]}"
    }
  ]
}
2018/11/07 12:13:06
parent author
parent permlinktechnology
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
titleHow to write your own recognition system using python and facenet
body@@ -56,13 +56,25 @@ th=%22 +3 2 -8 0%22 +height=%22180%22 /%3E%3C/ @@ -1266,31 +1266,16 @@ env%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A source e @@ -2300,39 +2300,24 @@ port os%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import fnmat @@ -2319,39 +2319,24 @@ fnmatch%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import re%3Cbr @@ -2346,101 +2346,41 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport numpy as np%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport cv2%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A +import numpy as np%3Cbr%3E%0Aimport cv2 %3Cbr%3E @@ -2426,31 +2426,16 @@ ace%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A from fac @@ -2462,31 +2462,16 @@ net%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import t @@ -2499,38 +2499,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A MINS @@ -2512,31 +2512,16 @@ 20%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A THRESHOL @@ -2544,31 +2544,16 @@ .7%5D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A FACTOR = @@ -2563,31 +2563,16 @@ 709%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A MARGIN = @@ -2579,31 +2579,16 @@ 44%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A SCALE = @@ -2660,31 +2660,16 @@ del%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A sess = t @@ -2684,31 +2684,16 @@ n()%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A with ses @@ -2708,39 +2708,24 @@ ault():%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -2782,38 +2782,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nb @@ -2871,39 +2871,24 @@ put:0%22)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -2965,39 +2965,24 @@ ngs:0%22)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3073,39 +3073,24 @@ ain:0%22)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3136,39 +3136,24 @@ shape()%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3216,31 +3216,16 @@ %5B1%5D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A pnet, rn @@ -3285,38 +3285,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A def @@ -3309,39 +3309,24 @@ sized):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3402,39 +3402,24 @@ ize, 3)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3439,39 +3439,24 @@ ict = %7B%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3517,39 +3517,24 @@ haped, %3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3596,39 +3596,24 @@ False,%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3621,39 +3621,24 @@ &nbsp;%7D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3706,88 +3706,25 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp;return embedding%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A + return embedding %3Cbr%3E @@ -3747,39 +3747,24 @@ ten(x):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3788,39 +3788,24 @@ mean(x)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3827,39 +3827,24 @@ .std(x)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3897,39 +3897,24 @@ .size))%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3977,42 +3977,9 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp; + retu @@ -4246,39 +4246,24 @@ e='.'):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4336,42 +4336,9 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp; + retu @@ -4431,38 +4431,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # lo @@ -4445,31 +4445,16 @@ ges%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A EMBEDDIN @@ -4465,31 +4465,16 @@ %7B%7D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for file @@ -4511,39 +4511,24 @@ ages'):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4561,39 +4561,24 @@ lename)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4679,39 +4679,24 @@ FACTOR)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if bounding @@ -4713,31 +4713,16 @@ ():%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A assert @@ -4786,39 +4786,24 @@ image'%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4857,39 +4857,24 @@ oxes%5B0%5D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4933,39 +4933,24 @@ y = box%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if accuracy @@ -4960,39 +4960,24 @@ t; 0.7:%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5080,39 +5080,24 @@ x2), :%5D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5250,39 +5250,24 @@ _CUBIC)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5354,39 +5354,24 @@ esized)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5480,39 +5480,24 @@ ename))%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5605,44 +5605,14 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A else:%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A + else: %3Cbr%3E @@ -5779,31 +5779,16 @@ deo%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A cap = cv @@ -5809,31 +5809,16 @@ (0)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A while Tr @@ -5821,39 +5821,24 @@ e True:%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Capture f @@ -5851,39 +5851,24 @@ y-frame%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5902,31 +5902,16 @@ d()%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Resiz @@ -5978,39 +5978,24 @@ cessing%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6057,31 +6057,16 @@ LE)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Conve @@ -6156,39 +6156,24 @@ n uses)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6214,38 +6214,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # d @@ -6235,39 +6235,24 @@ g boxes%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6363,39 +6363,24 @@ FACTOR)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if bounding @@ -6393,39 +6393,24 @@ .any():%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for index, @@ -6444,39 +6444,24 @@ boxes):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6545,39 +6545,24 @@ = face%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if accuracy @@ -6572,39 +6572,24 @@ t; 0.5:%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6716,39 +6716,24 @@ x2), :%5D%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6918,39 +6918,9 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A + %3Cbr%3E @@ -7044,39 +7044,24 @@ esized)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7197,38 +7197,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # t @@ -7235,39 +7235,24 @@ atabase%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7350,39 +7350,24 @@ = None%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7465,31 +7465,16 @@ one%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for nam @@ -7509,39 +7509,24 @@ tems():%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7687,39 +7687,24 @@ ing, 0)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if min_dist @@ -7747,39 +7747,24 @@ stance:%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7906,39 +7906,24 @@ = name%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8086,38 +8086,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # i @@ -8142,39 +8142,24 @@ too big%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if min_dist @@ -8190,39 +8190,24 @@ t; 1.1:%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8341,39 +8341,24 @@ SIMPLEX%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8479,39 +8479,24 @@ / SCALE%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8622,39 +8622,24 @@ LE - 10%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8776,39 +8776,24 @@ _text))%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8986,38 +8986,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # s @@ -9018,39 +9018,24 @@ t image%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9150,39 +9150,24 @@ SCALE))%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9285,39 +9285,24 @@ SCALE))%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9445,38 +9445,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # D @@ -9476,31 +9476,16 @@ ame%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;& @@ -9526,31 +9526,16 @@ me)%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if cv2. @@ -9573,31 +9573,16 @@ '):%3Cbr%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A break%3Cb @@ -9593,38 +9593,8 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Wh @@ -9641,51 +9641,21 @@ br%3E%0A -%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Acap.release()%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A +cap.release() %3Cbr%3E
json metadata{"tags":["technology"],"links":["https://github.com/davidsandberg/facenet","https://www.tensorflow.org/","https://github.com/skvark/opencv-python","https://www.python.org/downloads/","https://github.com/davidsandberg/facenet#pre-trained-models","https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-","https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8"],"app":"steemit/0.1","format":"html","image":["https://ommmm.com/media/my.jpg"]}
Transaction InfoBlock #27490729/Trx 6ed49914b6b53d4577862badf054d39bf6c8d8b2
View Raw JSON Data
{
  "trx_id": "6ed49914b6b53d4577862badf054d39bf6c8d8b2",
  "block": 27490729,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:13:06",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "title": "How to write your own recognition system using python and facenet",
      "body": "@@ -56,13 +56,25 @@\n th=%22\n+3\n 2\n-8\n 0%22 \n+height=%22180%22\n /%3E%3C/\n@@ -1266,31 +1266,16 @@\n env%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n source e\n@@ -2300,39 +2300,24 @@\n port os%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import fnmat\n@@ -2319,39 +2319,24 @@\n fnmatch%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import re%3Cbr\n@@ -2346,101 +2346,41 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport numpy as np%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport cv2%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n+import numpy as np%3Cbr%3E%0Aimport cv2\n %3Cbr%3E\n@@ -2426,31 +2426,16 @@\n ace%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n from fac\n@@ -2462,31 +2462,16 @@\n net%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import t\n@@ -2499,38 +2499,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n MINS\n@@ -2512,31 +2512,16 @@\n  20%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n THRESHOL\n@@ -2544,31 +2544,16 @@\n .7%5D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n FACTOR =\n@@ -2563,31 +2563,16 @@\n 709%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n MARGIN =\n@@ -2579,31 +2579,16 @@\n  44%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n SCALE = \n@@ -2660,31 +2660,16 @@\n del%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n sess = t\n@@ -2684,31 +2684,16 @@\n n()%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n with ses\n@@ -2708,39 +2708,24 @@\n ault():%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -2782,38 +2782,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nb\n@@ -2871,39 +2871,24 @@\n put:0%22)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -2965,39 +2965,24 @@\n ngs:0%22)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3073,39 +3073,24 @@\n ain:0%22)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3136,39 +3136,24 @@\n shape()%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3216,31 +3216,16 @@\n %5B1%5D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n pnet, rn\n@@ -3285,38 +3285,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n def \n@@ -3309,39 +3309,24 @@\n sized):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3402,39 +3402,24 @@\n ize, 3)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3439,39 +3439,24 @@\n ict = %7B%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3517,39 +3517,24 @@\n haped, %3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3596,39 +3596,24 @@\n  False,%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3621,39 +3621,24 @@\n &nbsp;%7D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3706,88 +3706,25 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp;return embedding%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n+ return embedding\n %3Cbr%3E\n@@ -3747,39 +3747,24 @@\n ten(x):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3788,39 +3788,24 @@\n mean(x)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3827,39 +3827,24 @@\n .std(x)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3897,39 +3897,24 @@\n .size))%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3977,42 +3977,9 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp;\n+ \n retu\n@@ -4246,39 +4246,24 @@\n e='.'):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4336,42 +4336,9 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nbsp;\n+ \n retu\n@@ -4431,38 +4431,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n # lo\n@@ -4445,31 +4445,16 @@\n ges%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n EMBEDDIN\n@@ -4465,31 +4465,16 @@\n  %7B%7D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n for file\n@@ -4511,39 +4511,24 @@\n ages'):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4561,39 +4561,24 @@\n lename)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4679,39 +4679,24 @@\n FACTOR)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if bounding\n@@ -4713,31 +4713,16 @@\n ():%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  assert \n@@ -4786,39 +4786,24 @@\n  image'%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4857,39 +4857,24 @@\n oxes%5B0%5D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4933,39 +4933,24 @@\n y = box%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if accuracy\n@@ -4960,39 +4960,24 @@\n t; 0.7:%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5080,39 +5080,24 @@\n x2), :%5D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5250,39 +5250,24 @@\n _CUBIC)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5354,39 +5354,24 @@\n esized)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5480,39 +5480,24 @@\n ename))%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5605,44 +5605,14 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A else:%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n+ else:\n %3Cbr%3E\n@@ -5779,31 +5779,16 @@\n deo%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n cap = cv\n@@ -5809,31 +5809,16 @@\n (0)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n while Tr\n@@ -5821,39 +5821,24 @@\n e True:%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Capture f\n@@ -5851,39 +5851,24 @@\n y-frame%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5902,31 +5902,16 @@\n d()%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Resiz\n@@ -5978,39 +5978,24 @@\n cessing%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6057,31 +6057,16 @@\n LE)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Conve\n@@ -6156,39 +6156,24 @@\n n uses)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6214,38 +6214,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # d\n@@ -6235,39 +6235,24 @@\n g boxes%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6363,39 +6363,24 @@\n FACTOR)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if bounding\n@@ -6393,39 +6393,24 @@\n .any():%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  for index, \n@@ -6444,39 +6444,24 @@\n boxes):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6545,39 +6545,24 @@\n  = face%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if accuracy\n@@ -6572,39 +6572,24 @@\n t; 0.5:%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6716,39 +6716,24 @@\n x2), :%5D%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6918,39 +6918,9 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n+ \n %3Cbr%3E\n@@ -7044,39 +7044,24 @@\n esized)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7197,38 +7197,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # t\n@@ -7235,39 +7235,24 @@\n atabase%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7350,39 +7350,24 @@\n  = None%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7465,31 +7465,16 @@\n one%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  for nam\n@@ -7509,39 +7509,24 @@\n tems():%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7687,39 +7687,24 @@\n ing, 0)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if min_dist\n@@ -7747,39 +7747,24 @@\n stance:%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7906,39 +7906,24 @@\n  = name%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8086,38 +8086,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # i\n@@ -8142,39 +8142,24 @@\n too big%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if min_dist\n@@ -8190,39 +8190,24 @@\n t; 1.1:%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8341,39 +8341,24 @@\n SIMPLEX%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8479,39 +8479,24 @@\n / SCALE%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8622,39 +8622,24 @@\n LE - 10%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8776,39 +8776,24 @@\n _text))%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8986,38 +8986,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # s\n@@ -9018,39 +9018,24 @@\n t image%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9150,39 +9150,24 @@\n SCALE))%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9285,39 +9285,24 @@\n SCALE))%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9445,38 +9445,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # D\n@@ -9476,31 +9476,16 @@\n ame%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&\n@@ -9526,31 +9526,16 @@\n me)%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if cv2.\n@@ -9573,31 +9573,16 @@\n '):%3Cbr%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  break%3Cb\n@@ -9593,38 +9593,8 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n # Wh\n@@ -9641,51 +9641,21 @@\n br%3E%0A\n-%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Acap.release()%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n+cap.release()\n %3Cbr%3E\n",
      "json_metadata": "{\"tags\":[\"technology\"],\"links\":[\"https://github.com/davidsandberg/facenet\",\"https://www.tensorflow.org/\",\"https://github.com/skvark/opencv-python\",\"https://www.python.org/downloads/\",\"https://github.com/davidsandberg/facenet#pre-trained-models\",\"https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-\",\"https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8\"],\"app\":\"steemit/0.1\",\"format\":\"html\",\"image\":[\"https://ommmm.com/media/my.jpg\"]}"
    }
  ]
}
2018/11/07 12:09:18
voterraise-me-up
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
weight1 (0.01%)
Transaction InfoBlock #27490653/Trx 01685fde0ab540fc6fa1c4ffe19b7dc774c856a4
View Raw JSON Data
{
  "trx_id": "01685fde0ab540fc6fa1c4ffe19b7dc774c856a4",
  "block": 27490653,
  "trx_in_block": 32,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:09:18",
  "op": [
    "vote",
    {
      "voter": "raise-me-up",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "weight": 1
    }
  ]
}
2018/11/07 12:08:42
parent author
parent permlinktechnology
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
titleHow to write your own recognition system using python and facenet
body@@ -3,16 +3,80 @@ tml%3E%0A%3Cp%3E - +%3Cimg src=%22https://ommmm.com/media/my.jpg%22 width=%22280%22 /%3E%3C/p%3E%0A%3Cp%3E First ti @@ -1254,16 +1254,31 @@ env%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A source e @@ -2303,24 +2303,39 @@ port os%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import fnmat @@ -2337,24 +2337,39 @@ fnmatch%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import re%3Cbr @@ -2379,41 +2379,101 @@ br%3E%0A -import numpy as np%3Cbr%3E%0Aimport cv2 +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport numpy as np%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport cv2%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E @@ -2515,24 +2515,39 @@ ct_face%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A from facenet @@ -2566,24 +2566,39 @@ facenet%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A import tenso @@ -2618,16 +2618,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A MINSIZE @@ -2665,16 +2665,31 @@ 20%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A THRESHOL @@ -2712,16 +2712,31 @@ .7%5D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A FACTOR = @@ -2746,16 +2746,31 @@ 709%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A MARGIN = @@ -2777,16 +2777,31 @@ 44%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A SCALE = @@ -2873,16 +2873,31 @@ del%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A sess = t @@ -2912,16 +2912,31 @@ n()%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A with ses @@ -2947,32 +2947,47 @@ _default():%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -3028,32 +3028,62 @@ 4759')%3Cbr%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -3155,32 +3155,47 @@ (%22input:0%22)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -3264,32 +3264,47 @@ eddings:0%22)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -3391,24 +3391,39 @@ ain:0%22)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3469,24 +3469,39 @@ shape()%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3564,16 +3564,31 @@ %5B1%5D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A pnet, rn @@ -3640,24 +3640,54 @@ e)%3Cbr%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A def get_embe @@ -3702,24 +3702,39 @@ sized):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3810,24 +3810,39 @@ ize, 3)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3862,24 +3862,39 @@ ict = %7B%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -3955,24 +3955,39 @@ haped, %3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4049,24 +4049,39 @@ False,%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4089,24 +4089,39 @@ &nbsp;%7D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4181,24 +4181,39 @@ d_dict)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4241,24 +4241,54 @@ ng%3Cbr%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A def prewhite @@ -4293,24 +4293,39 @@ ten(x):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4345,32 +4345,47 @@ np.mean(x)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -4403,24 +4403,39 @@ .std(x)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4484,32 +4484,47 @@ rt(x.size))%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -4575,24 +4575,39 @@ td_adj)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -4881,32 +4881,47 @@ where='.'):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -4982,24 +4982,39 @@ RECASE)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5114,16 +5114,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # load i @@ -5162,16 +5162,31 @@ ges%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A EMBEDDIN @@ -5197,16 +5197,31 @@ %7B%7D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for file @@ -5258,24 +5258,39 @@ ages'):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5323,24 +5323,39 @@ lename)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5452,32 +5452,47 @@ LD, FACTOR)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if bounding_box @@ -5505,16 +5505,31 @@ ():%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A assert @@ -5593,24 +5593,39 @@ image'%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5679,24 +5679,39 @@ oxes%5B0%5D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5770,24 +5770,39 @@ y = box%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if accuracy @@ -5812,24 +5812,39 @@ t; 0.7:%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -5943,32 +5943,47 @@ int(x2), :%5D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -6132,24 +6132,39 @@ _CUBIC)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6247,32 +6247,47 @@ en(resized)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -6392,24 +6392,39 @@ ename))%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -6532,14 +6532,44 @@ br%3E%0A - else: +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A else:%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E @@ -6736,16 +6736,31 @@ deo%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A cap = cv @@ -6781,16 +6781,31 @@ (0)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A while Tr @@ -6808,24 +6808,39 @@ e True:%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Capture f @@ -6849,32 +6849,47 @@ me-by-frame%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -6919,16 +6919,31 @@ d()%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Resiz @@ -7010,24 +7010,39 @@ cessing%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7100,24 +7100,39 @@ =SCALE)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Convert t @@ -7218,24 +7218,39 @@ n uses)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7287,16 +7287,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # detec @@ -7342,24 +7342,39 @@ g boxes%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7485,24 +7485,39 @@ FACTOR)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if bounding @@ -7530,24 +7530,39 @@ .any():%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for index, @@ -7596,24 +7596,39 @@ boxes):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7712,24 +7712,39 @@ = face%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if accuracy @@ -7754,24 +7754,39 @@ t; 0.5:%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -7913,24 +7913,39 @@ x2), :%5D%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8126,17 +8126,47 @@ IC)%3Cbr%3E%0A - +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E%0A &n @@ -8286,24 +8286,39 @@ esized)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8450,16 +8450,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # try t @@ -8522,24 +8522,39 @@ atabase%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8652,24 +8652,39 @@ = None%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -8778,24 +8778,39 @@ = None%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A for name, e @@ -8841,24 +8841,39 @@ tems():%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9034,24 +9034,39 @@ ing, 0)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if min_dist @@ -9109,24 +9109,39 @@ stance:%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9279,32 +9279,47 @@ name = name%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -9474,16 +9474,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # if we @@ -9564,24 +9564,39 @@ too big%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if min_dist @@ -9627,24 +9627,39 @@ t; 1.1:%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9793,24 +9793,39 @@ SIMPLEX%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -9946,24 +9946,39 @@ / SCALE%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -10104,24 +10104,39 @@ LE - 10%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -10273,24 +10273,39 @@ _text))%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -10494,16 +10494,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # show @@ -10560,24 +10560,39 @@ t image%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -10703,32 +10703,47 @@ t(y/SCALE))%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp;&nb @@ -10857,24 +10857,39 @@ SCALE))%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -11028,16 +11028,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # Displ @@ -11089,24 +11089,39 @@ g frame%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A &nbsp;&nbsp @@ -11154,24 +11154,39 @@ frame)%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A if cv2.wait @@ -11220,16 +11220,31 @@ '):%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A break%3Cb @@ -11251,16 +11251,46 @@ r%3E%0A%3Cbr%3E%0A +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A # When e @@ -11333,21 +11333,51 @@ br%3E%0A -cap.release() +%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Acap.release()%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E
json metadata{"tags":["technology"],"links":["https://github.com/davidsandberg/facenet","https://www.tensorflow.org/","https://github.com/skvark/opencv-python","https://www.python.org/downloads/","https://github.com/davidsandberg/facenet#pre-trained-models","https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-","https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8"],"app":"steemit/0.1","format":"html","image":["https://ommmm.com/media/my.jpg"]}
Transaction InfoBlock #27490641/Trx 170193925064efc7bfca948ed41c5e9c76d9e223
View Raw JSON Data
{
  "trx_id": "170193925064efc7bfca948ed41c5e9c76d9e223",
  "block": 27490641,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:08:42",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "title": "How to write your own recognition system using python and facenet",
      "body": "@@ -3,16 +3,80 @@\n tml%3E%0A%3Cp%3E\n-\n \n+%3Cimg src=%22https://ommmm.com/media/my.jpg%22 width=%22280%22 /%3E%3C/p%3E%0A%3Cp%3E\n First ti\n@@ -1254,16 +1254,31 @@\n env%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n source e\n@@ -2303,24 +2303,39 @@\n port os%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import fnmat\n@@ -2337,24 +2337,39 @@\n fnmatch%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import re%3Cbr\n@@ -2379,41 +2379,101 @@\n br%3E%0A\n-import numpy as np%3Cbr%3E%0Aimport cv2\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport numpy as np%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Aimport cv2%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n %3Cbr%3E\n@@ -2515,24 +2515,39 @@\n ct_face%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n from facenet\n@@ -2566,24 +2566,39 @@\n facenet%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n import tenso\n@@ -2618,16 +2618,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n MINSIZE \n@@ -2665,16 +2665,31 @@\n  20%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n THRESHOL\n@@ -2712,16 +2712,31 @@\n .7%5D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n FACTOR =\n@@ -2746,16 +2746,31 @@\n 709%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n MARGIN =\n@@ -2777,16 +2777,31 @@\n  44%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n SCALE = \n@@ -2873,16 +2873,31 @@\n del%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n sess = t\n@@ -2912,16 +2912,31 @@\n n()%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n with ses\n@@ -2947,32 +2947,47 @@\n _default():%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -3028,32 +3028,62 @@\n 4759')%3Cbr%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -3155,32 +3155,47 @@\n (%22input:0%22)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -3264,32 +3264,47 @@\n eddings:0%22)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -3391,24 +3391,39 @@\n ain:0%22)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3469,24 +3469,39 @@\n shape()%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3564,16 +3564,31 @@\n %5B1%5D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n pnet, rn\n@@ -3640,24 +3640,54 @@\n e)%3Cbr%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n def get_embe\n@@ -3702,24 +3702,39 @@\n sized):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3810,24 +3810,39 @@\n ize, 3)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3862,24 +3862,39 @@\n ict = %7B%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -3955,24 +3955,39 @@\n haped, %3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4049,24 +4049,39 @@\n  False,%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4089,24 +4089,39 @@\n &nbsp;%7D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4181,24 +4181,39 @@\n d_dict)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4241,24 +4241,54 @@\n ng%3Cbr%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n def prewhite\n@@ -4293,24 +4293,39 @@\n ten(x):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4345,32 +4345,47 @@\n  np.mean(x)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -4403,24 +4403,39 @@\n .std(x)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4484,32 +4484,47 @@\n rt(x.size))%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -4575,24 +4575,39 @@\n td_adj)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -4881,32 +4881,47 @@\n where='.'):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -4982,24 +4982,39 @@\n RECASE)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5114,16 +5114,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n # load i\n@@ -5162,16 +5162,31 @@\n ges%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n EMBEDDIN\n@@ -5197,16 +5197,31 @@\n  %7B%7D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n for file\n@@ -5258,24 +5258,39 @@\n ages'):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5323,24 +5323,39 @@\n lename)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5452,32 +5452,47 @@\n LD, FACTOR)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if bounding_box\n@@ -5505,16 +5505,31 @@\n ():%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  assert \n@@ -5593,24 +5593,39 @@\n  image'%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5679,24 +5679,39 @@\n oxes%5B0%5D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5770,24 +5770,39 @@\n y = box%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if accuracy\n@@ -5812,24 +5812,39 @@\n t; 0.7:%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -5943,32 +5943,47 @@\n int(x2), :%5D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -6132,24 +6132,39 @@\n _CUBIC)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6247,32 +6247,47 @@\n en(resized)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -6392,24 +6392,39 @@\n ename))%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -6532,14 +6532,44 @@\n br%3E%0A\n- else:\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A else:%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n %3Cbr%3E\n@@ -6736,16 +6736,31 @@\n deo%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n cap = cv\n@@ -6781,16 +6781,31 @@\n (0)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n while Tr\n@@ -6808,24 +6808,39 @@\n e True:%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Capture f\n@@ -6849,32 +6849,47 @@\n me-by-frame%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -6919,16 +6919,31 @@\n d()%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Resiz\n@@ -7010,24 +7010,39 @@\n cessing%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7100,24 +7100,39 @@\n =SCALE)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Convert t\n@@ -7218,24 +7218,39 @@\n n uses)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7287,16 +7287,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # detec\n@@ -7342,24 +7342,39 @@\n g boxes%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7485,24 +7485,39 @@\n FACTOR)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if bounding\n@@ -7530,24 +7530,39 @@\n .any():%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  for index, \n@@ -7596,24 +7596,39 @@\n boxes):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7712,24 +7712,39 @@\n  = face%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if accuracy\n@@ -7754,24 +7754,39 @@\n t; 0.5:%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -7913,24 +7913,39 @@\n x2), :%5D%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8126,17 +8126,47 @@\n IC)%3Cbr%3E%0A\n- \n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A %3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n %3Cbr%3E%0A &n\n@@ -8286,24 +8286,39 @@\n esized)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8450,16 +8450,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # try t\n@@ -8522,24 +8522,39 @@\n atabase%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8652,24 +8652,39 @@\n  = None%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -8778,24 +8778,39 @@\n  = None%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  for name, e\n@@ -8841,24 +8841,39 @@\n tems():%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9034,24 +9034,39 @@\n ing, 0)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if min_dist\n@@ -9109,24 +9109,39 @@\n stance:%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9279,32 +9279,47 @@\n name = name%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -9474,16 +9474,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # if we\n@@ -9564,24 +9564,39 @@\n too big%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if min_dist\n@@ -9627,24 +9627,39 @@\n t; 1.1:%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9793,24 +9793,39 @@\n SIMPLEX%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -9946,24 +9946,39 @@\n / SCALE%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -10104,24 +10104,39 @@\n LE - 10%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -10273,24 +10273,39 @@\n _text))%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -10494,16 +10494,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # show \n@@ -10560,24 +10560,39 @@\n t image%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -10703,32 +10703,47 @@\n t(y/SCALE))%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp;&nb\n@@ -10857,24 +10857,39 @@\n SCALE))%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -11028,16 +11028,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  # Displ\n@@ -11089,24 +11089,39 @@\n g frame%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  &nbsp;&nbsp\n@@ -11154,24 +11154,39 @@\n  frame)%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  if cv2.wait\n@@ -11220,16 +11220,31 @@\n '):%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n  break%3Cb\n@@ -11251,16 +11251,46 @@\n r%3E%0A%3Cbr%3E%0A\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n # When e\n@@ -11333,21 +11333,51 @@\n br%3E%0A\n-cap.release()\n+%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0Acap.release()%3Cbr%3E%0A%3Cbr%3E%0A%3Cbr%3E%0A\n %3Cbr%3E\n",
      "json_metadata": "{\"tags\":[\"technology\"],\"links\":[\"https://github.com/davidsandberg/facenet\",\"https://www.tensorflow.org/\",\"https://github.com/skvark/opencv-python\",\"https://www.python.org/downloads/\",\"https://github.com/davidsandberg/facenet#pre-trained-models\",\"https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-\",\"https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8\"],\"app\":\"steemit/0.1\",\"format\":\"html\",\"image\":[\"https://ommmm.com/media/my.jpg\"]}"
    }
  ]
}
2018/11/07 12:02:51
parent author
parent permlinktechnology
authorferumflex
permlinkhow-to-write-your-own-recognition-system-using-python-and-facenet
titleHow to write your own recognition system using python and facenet
body<html> <p>First time when I saw how Face ID for Apple worked, I thought it might be hard to implement it. In general, yes if you write all things from scratch, it can be a different problem. Nowadays we have plenty of instruments which we can use to build such system much faster. Just use good libraries.</p> <p>One of such library is <a href="https://github.com/davidsandberg/facenet">facenet</a>. Also there are others but we will not discuss them in this text. If you are interested just google or pm me.</p> <p>To build this program we will use python3.6, <a href="https://www.tensorflow.org/">tensorflow</a>, <a href="https://github.com/skvark/opencv-python">opencv</a>, facenet and a little bit of magic. So first of all you need python3.6 to be installed on your computer (it should work with python3.7, but I did not test it). If you do not have python3.6 installed please follow instructions on <a href="https://www.python.org/downloads/">official python site</a>.</p> <p>1. Here are we go. First of all you need to create virtual environment for python and activate it(assuming I've created folder for your new project and you are already in it):</p> <pre><code>python3 -m venv env<br> source env/bin/activate</code></pre> <p>2. After that install all requirements with this command:</p> <pre><code>pip3 install facenet opencv-python</code></pre> <p>That's all we need.&nbsp;</p> <p>3. Next step we need to download one of the pre-trained model from <a href="https://github.com/davidsandberg/facenet#pre-trained-models">facenet</a>(section Pre-trained models). I can not say what exactly model is better, both works fine so you can use what ever you want.</p> <p>Let's assume you selected model <a href="https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-">20180402-114759</a>. Just download zip file and unzip it to your project folder.&nbsp;</p> <p>4. Take a photo of your face and place it in the folder images. Extension should be *.jpg.</p> <p>5. In this step we are going to start writing script. I will explain in general what those blocks of code do and after latest block we will combine it all together.&nbsp;</p> <p>Import things that we need, and init some constants:</p> <pre><code>import os<br> import fnmatch<br> import re<br> <br> import numpy as np<br> import cv2<br> from facenet.src.align import detect_face<br> from facenet.src import facenet<br> import tensorflow as tf<br> <br> MINSIZE = 20<br> THRESHOLD = [0.6, 0.7, 0.7]<br> FACTOR = 0.709<br> MARGIN = 44<br> SCALE = 0.25</code></pre> <p>Init facenet model:</p> <pre><code># init model<br> sess = tf.Session()<br> with sess.as_default():<br> &nbsp;&nbsp;&nbsp;facenet.load_model('20180402-114759')<br> <br> &nbsp;&nbsp;&nbsp;images_placeholder = tf.get_default_graph().get_tensor_by_name("input:0")<br> &nbsp;&nbsp;&nbsp;embeddings = tf.get_default_graph().get_tensor_by_name("embeddings:0")<br> &nbsp;&nbsp;&nbsp;phase_train_placeholder = tf.get_default_graph().get_tensor_by_name("phase_train:0")<br> &nbsp;&nbsp;&nbsp;embedding_size = embeddings.get_shape()<br> &nbsp;&nbsp;&nbsp;input_image_size = images_placeholder.get_shape()[1]<br> pnet, rnet, onet = detect_face.create_mtcnn(sess, None)<br> <br> def get_embedding(resized):<br> &nbsp;&nbsp;&nbsp;reshaped = resized.reshape(-1, input_image_size, input_image_size, 3)<br> &nbsp;&nbsp;&nbsp;feed_dict = {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;images_placeholder: reshaped, <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;phase_train_placeholder: False,<br> &nbsp;&nbsp;&nbsp;}<br> &nbsp;&nbsp;&nbsp;embedding = sess.run(embeddings, feed_dict=feed_dict)<br> &nbsp;&nbsp;&nbsp;return embedding<br> <br> def prewhiten(x):<br> &nbsp;&nbsp;&nbsp;mean = np.mean(x)<br> &nbsp;&nbsp;&nbsp;std = np.std(x)<br> &nbsp;&nbsp;&nbsp;std_adj = np.maximum(std, 1.0/np.sqrt(x.size))<br> &nbsp;&nbsp;&nbsp;y = np.multiply(np.subtract(x, mean), 1/std_adj)<br> &nbsp;&nbsp;&nbsp;return y</code></pre> <p>20180402-114759 - name of the folder where we extracted pre-trained model.&nbsp;</p> <p>Load images from folder, find face in it(should be only one face on image) and create embedding for each face:</p> <pre><code>def findfiles(which, where='.'):<br> &nbsp;&nbsp;&nbsp;rule = re.compile(fnmatch.translate(which), re.IGNORECASE)<br> &nbsp;&nbsp;&nbsp;return [os.path.join(where, name) for name in os.listdir(where) if rule.match(name)]<br> <br> # load images<br> EMBEDDINGS = {}<br> for filename in findfiles('*.jpg', 'images'):<br> &nbsp;&nbsp;&nbsp;img = cv2.imread(filename)<br> &nbsp;&nbsp;&nbsp;bounding_boxes, _ = detect_face.detect_face(img, MINSIZE, pnet, rnet, onet, THRESHOLD, FACTOR)<br> if bounding_boxes.any():<br> assert bounding_boxes.shape[0] == 1, 'Find too many faces on the image'<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;box = bounding_boxes[0]<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x, y, x2, y2, accuracy = box<br> if accuracy &gt; 0.7:<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cropped = img[int(y):int(y2), int(x):int(x2), :]<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resized = cv2.resize(cropped, (input_image_size, input_image_size), interpolation=cv2.INTER_CUBIC)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;prewhitened = prewhiten(resized)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name, _ = os.path.splitext(os.path.basename(filename))<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EMBEDDINGS[name] = get_embedding(prewhitened)<br> else:<br> raise Exception('Can not find face on the image')</code></pre> <p>Init opencv, detect faces using facenet and search in our database:</p> <pre><code># init video<br> cap = cv2.VideoCapture(0)<br> while True:<br> # Capture frame-by-frame<br> &nbsp;&nbsp;&nbsp;ret, frame = cap.read()<br> # Resize frame of video to 1/4 size for faster face recognition processing<br> &nbsp;&nbsp;&nbsp;img = cv2.resize(frame, (0, 0), fx=SCALE, fy=SCALE)<br> # Convert the image from BGR color (which OpenCV uses) to RGB color (which face_recognition uses)<br> &nbsp;&nbsp;&nbsp;img = img[:, :, ::-1]<br> <br> # detect bounding boxes<br> &nbsp;&nbsp;&nbsp;bounding_boxes, list_points = detect_face.detect_face(img, MINSIZE, pnet, rnet, onet, THRESHOLD, FACTOR)<br> if bounding_boxes.any():<br> for index, face in enumerate(bounding_boxes):<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x, y, x2, y2, accuracy = face<br> if accuracy &gt; 0.5:<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cropped = img[int(y):int(y2), int(x):int(x2), :]<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resized = cv2.resize(cropped, (input_image_size, input_image_size), interpolation=cv2.INTER_CUBIC)<br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;prewhitened = prewhiten(resized)<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;guest_embedding = get_embedding(prewhitened)<br> <br> # try to find guest face in our database<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_distance = None<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_name = None<br> for name, embedding in EMBEDDINGS.items():<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;distance = facenet.distance(guest_embedding, embedding, 0)<br> if min_distance is None or min_distance &gt; distance:<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_name = name<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_distance = distance<br> <br> # if we found face in database and distance is not too big<br> if min_distance and min_distance &lt; 1.1:<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font = cv2.FONT_HERSHEY_SIMPLEX<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_text = x / SCALE<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_text = y / SCALE - 10<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point = (int(x_text), int(y_text))<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cv2.putText(frame, min_name, point, font, 1, (255, 255, 255), 2, cv2.LINE_AA)<br> <br> # show rectangle for face at image<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point = (int(x/SCALE), int(y/SCALE))<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point2 = (int(x2/SCALE), int(y2/SCALE))<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cv2.rectangle(frame, point, point2, (0, 255, 0), 2)<br> <br> # Display the resulting frame<br> &nbsp;&nbsp;&nbsp;cv2.imshow('frame', frame)<br> if cv2.waitKey(1) &amp; 0xFF == ord('q'):<br> break<br> <br> # When everything done, release the capture<br> cap.release()<br> cv2.destroyAllWindows()</code></pre> <p>Combining all together. You can check script <a href="https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8">on gist</a>.</p> <p><br></p> </html>
json metadata{"tags":["technology"],"links":["https://github.com/davidsandberg/facenet","https://www.tensorflow.org/","https://github.com/skvark/opencv-python","https://www.python.org/downloads/","https://github.com/davidsandberg/facenet#pre-trained-models","https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-","https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8"],"app":"steemit/0.1","format":"html"}
Transaction InfoBlock #27490525/Trx 23f1a309e003bb9aa9300a5f95bc92da403c48eb
View Raw JSON Data
{
  "trx_id": "23f1a309e003bb9aa9300a5f95bc92da403c48eb",
  "block": 27490525,
  "trx_in_block": 51,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-11-07T12:02:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "ferumflex",
      "permlink": "how-to-write-your-own-recognition-system-using-python-and-facenet",
      "title": "How to write your own recognition system using python and facenet",
      "body": "<html>\n<p>First time when I saw how Face ID for Apple worked, I thought it might be hard to implement it. In general, yes if you write all things from scratch, it can be a different problem. Nowadays we have plenty of instruments which we can use to build such system much faster. Just use good libraries.</p>\n<p>One of such library is <a href=\"https://github.com/davidsandberg/facenet\">facenet</a>. Also there are others but we will not discuss them in this text. If you are interested just google or pm me.</p>\n<p>To build this program we will use python3.6, <a href=\"https://www.tensorflow.org/\">tensorflow</a>, <a href=\"https://github.com/skvark/opencv-python\">opencv</a>, facenet and a little bit of magic. So first of all you need python3.6 to be installed on your computer (it should work with python3.7, but I did not test it). If you do not have python3.6 installed please follow instructions on <a href=\"https://www.python.org/downloads/\">official python site</a>.</p>\n<p>1. Here are we go. First of all you need to create virtual environment for python and activate it(assuming I've created folder for your new project and you are already in it):</p>\n<pre><code>python3 -m venv env<br>\nsource env/bin/activate</code></pre>\n<p>2. After that install all requirements with this command:</p>\n<pre><code>pip3 install facenet opencv-python</code></pre>\n<p>That's all we need.&nbsp;</p>\n<p>3. Next step we need to download one of the pre-trained model from <a href=\"https://github.com/davidsandberg/facenet#pre-trained-models\">facenet</a>(section Pre-trained models). I can not say what exactly model is better, both works fine so you can use what ever you want.</p>\n<p>Let's assume you selected model <a href=\"https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-\">20180402-114759</a>. Just download zip file and unzip it to your project folder.&nbsp;</p>\n<p>4. Take a photo of your face and place it in the folder images. Extension should be *.jpg.</p>\n<p>5. In this step we are going to start writing script. I will explain in general what those blocks of code do and after latest block we will combine it all together.&nbsp;</p>\n<p>Import things that we need, and init some constants:</p>\n<pre><code>import os<br>\nimport fnmatch<br>\nimport re<br>\n<br>\nimport numpy as np<br>\nimport cv2<br>\nfrom facenet.src.align import detect_face<br>\nfrom facenet.src import facenet<br>\nimport tensorflow as tf<br>\n<br>\nMINSIZE = 20<br>\nTHRESHOLD = [0.6, 0.7, 0.7]<br>\nFACTOR = 0.709<br>\nMARGIN = 44<br>\nSCALE = 0.25</code></pre>\n<p>Init facenet model:</p>\n<pre><code># init model<br>\nsess = tf.Session()<br>\nwith sess.as_default():<br>\n &nbsp;&nbsp;&nbsp;facenet.load_model('20180402-114759')<br>\n<br>\n &nbsp;&nbsp;&nbsp;images_placeholder = tf.get_default_graph().get_tensor_by_name(\"input:0\")<br>\n &nbsp;&nbsp;&nbsp;embeddings = tf.get_default_graph().get_tensor_by_name(\"embeddings:0\")<br>\n &nbsp;&nbsp;&nbsp;phase_train_placeholder = tf.get_default_graph().get_tensor_by_name(\"phase_train:0\")<br>\n &nbsp;&nbsp;&nbsp;embedding_size = embeddings.get_shape()<br>\n &nbsp;&nbsp;&nbsp;input_image_size = images_placeholder.get_shape()[1]<br>\npnet, rnet, onet = detect_face.create_mtcnn(sess, None)<br>\n<br>\ndef get_embedding(resized):<br>\n &nbsp;&nbsp;&nbsp;reshaped = resized.reshape(-1, input_image_size, input_image_size, 3)<br>\n &nbsp;&nbsp;&nbsp;feed_dict = {<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;images_placeholder: reshaped, <br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;phase_train_placeholder: False,<br>\n &nbsp;&nbsp;&nbsp;}<br>\n &nbsp;&nbsp;&nbsp;embedding = sess.run(embeddings, feed_dict=feed_dict)<br>\n &nbsp;&nbsp;&nbsp;return embedding<br>\n<br>\ndef prewhiten(x):<br>\n &nbsp;&nbsp;&nbsp;mean = np.mean(x)<br>\n &nbsp;&nbsp;&nbsp;std = np.std(x)<br>\n &nbsp;&nbsp;&nbsp;std_adj = np.maximum(std, 1.0/np.sqrt(x.size))<br>\n &nbsp;&nbsp;&nbsp;y = np.multiply(np.subtract(x, mean), 1/std_adj)<br>\n &nbsp;&nbsp;&nbsp;return y</code></pre>\n<p>20180402-114759 - name of the folder where we extracted pre-trained model.&nbsp;</p>\n<p>Load images from folder, find face in it(should be only one face on image) and create embedding for each face:</p>\n<pre><code>def findfiles(which, where='.'):<br>\n &nbsp;&nbsp;&nbsp;rule = re.compile(fnmatch.translate(which), re.IGNORECASE)<br>\n &nbsp;&nbsp;&nbsp;return [os.path.join(where, name) for name in os.listdir(where) if rule.match(name)]<br>\n<br>\n# load images<br>\nEMBEDDINGS = {}<br>\nfor filename in findfiles('*.jpg', 'images'):<br>\n &nbsp;&nbsp;&nbsp;img = cv2.imread(filename)<br>\n &nbsp;&nbsp;&nbsp;bounding_boxes, _ = detect_face.detect_face(img, MINSIZE, pnet, rnet, onet, THRESHOLD, FACTOR)<br>\n if bounding_boxes.any():<br>\n assert bounding_boxes.shape[0] == 1, 'Find too many faces on the image'<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;box = bounding_boxes[0]<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x, y, x2, y2, accuracy = box<br>\n if accuracy &gt; 0.7:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cropped = img[int(y):int(y2), int(x):int(x2), :]<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resized = cv2.resize(cropped, (input_image_size, input_image_size), interpolation=cv2.INTER_CUBIC)<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;prewhitened = prewhiten(resized)<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name, _ = os.path.splitext(os.path.basename(filename))<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EMBEDDINGS[name] = get_embedding(prewhitened)<br>\n else:<br>\n raise Exception('Can not find face on the image')</code></pre>\n<p>Init opencv, detect faces using facenet and search in our database:</p>\n<pre><code># init video<br>\ncap = cv2.VideoCapture(0)<br>\nwhile True:<br>\n # Capture frame-by-frame<br>\n &nbsp;&nbsp;&nbsp;ret, frame = cap.read()<br>\n # Resize frame of video to 1/4 size for faster face recognition processing<br>\n &nbsp;&nbsp;&nbsp;img = cv2.resize(frame, (0, 0), fx=SCALE, fy=SCALE)<br>\n # Convert the image from BGR color (which OpenCV uses) to RGB color (which face_recognition uses)<br>\n &nbsp;&nbsp;&nbsp;img = img[:, :, ::-1]<br>\n<br>\n # detect bounding boxes<br>\n &nbsp;&nbsp;&nbsp;bounding_boxes, list_points = detect_face.detect_face(img, MINSIZE, pnet, rnet, onet, THRESHOLD, FACTOR)<br>\n if bounding_boxes.any():<br>\n for index, face in enumerate(bounding_boxes):<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x, y, x2, y2, accuracy = face<br>\n if accuracy &gt; 0.5:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cropped = img[int(y):int(y2), int(x):int(x2), :]<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;resized = cv2.resize(cropped, (input_image_size, input_image_size), interpolation=cv2.INTER_CUBIC)<br>\n <br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;prewhitened = prewhiten(resized)<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;guest_embedding = get_embedding(prewhitened)<br>\n<br>\n # try to find guest face in our database<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_distance = None<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_name = None<br>\n for name, embedding in EMBEDDINGS.items():<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;distance = facenet.distance(guest_embedding, embedding, 0)<br>\n if min_distance is None or min_distance &gt; distance:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_name = name<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;min_distance = distance<br>\n<br>\n # if we found face in database and distance is not too big<br>\n if min_distance and min_distance &lt; 1.1:<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;font = cv2.FONT_HERSHEY_SIMPLEX<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x_text = x / SCALE<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y_text = y / SCALE - 10<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point = (int(x_text), int(y_text))<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cv2.putText(frame, min_name, point, font, 1, (255, 255, 255), 2, cv2.LINE_AA)<br>\n<br>\n # show rectangle for face at image<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point = (int(x/SCALE), int(y/SCALE))<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;point2 = (int(x2/SCALE), int(y2/SCALE))<br>\n &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cv2.rectangle(frame, point, point2, (0, 255, 0), 2)<br>\n<br>\n # Display the resulting frame<br>\n &nbsp;&nbsp;&nbsp;cv2.imshow('frame', frame)<br>\n if cv2.waitKey(1) &amp; 0xFF == ord('q'):<br>\n break<br>\n<br>\n# When everything done, release the capture<br>\ncap.release()<br>\ncv2.destroyAllWindows()</code></pre>\n<p>Combining all together. You can check script <a href=\"https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8\">on gist</a>.</p>\n<p><br></p>\n</html>",
      "json_metadata": "{\"tags\":[\"technology\"],\"links\":[\"https://github.com/davidsandberg/facenet\",\"https://www.tensorflow.org/\",\"https://github.com/skvark/opencv-python\",\"https://www.python.org/downloads/\",\"https://github.com/davidsandberg/facenet#pre-trained-models\",\"https://drive.google.com/open?id=1EXPBSXwTaqrSC0OhUdXNmKSh9qJUQ55-\",\"https://gist.github.com/FerumFlex/cb134649537b339c6c465732a4f1f8a8\"],\"app\":\"steemit/0.1\",\"format\":\"html\"}"
    }
  ]
}
steemdelegated 1.251 SP to @ferumflex
2018/05/16 20:17:12
delegatorsteem
delegateeferumflex
vesting shares2034.839782 VESTS
Transaction InfoBlock #22489845/Trx 9c624768b6f900c7305367d53c22f378917890e7
View Raw JSON Data
{
  "trx_id": "9c624768b6f900c7305367d53c22f378917890e7",
  "block": 22489845,
  "trx_in_block": 27,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-05-16T20:17:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "2034.839782 VESTS"
    }
  ]
}
steemdelegated 7.186 SP to @ferumflex
2018/01/09 06:38:15
delegatorsteem
delegateeferumflex
vesting shares11688.058714 VESTS
Transaction InfoBlock #18819565/Trx e3342741fcfbd165c794e424c1db03d45460f709
View Raw JSON Data
{
  "trx_id": "e3342741fcfbd165c794e424c1db03d45460f709",
  "block": 18819565,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2018-01-09T06:38:15",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "11688.058714 VESTS"
    }
  ]
}
2017/09/27 16:55:54
parent authorferumflex
parent permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
authorkaitlynmoore01
permlinkre-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170927t165553069z
title
bodyVery good article. Really appreciate you bring this to our attention. I've been asking myself. How many people really do a proper background check before seriously investing in an ICO? Do you know this interesting site? https://www.coincheckup.com The best crypto analysis site by far. Complete in depth investment analysis.
json metadata{"tags":["cryptocurrency"],"links":["https://www.coincheckup.com"],"app":"steemit/0.1"}
Transaction InfoBlock #15838822/Trx bea8225d218d2359534c82c2da765ea4a39dfa89
View Raw JSON Data
{
  "trx_id": "bea8225d218d2359534c82c2da765ea4a39dfa89",
  "block": 15838822,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-09-27T16:55:54",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "author": "kaitlynmoore01",
      "permlink": "re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170927t165553069z",
      "title": "",
      "body": "Very good article. Really appreciate you bring this to our attention. I've been asking myself. How many people really do a proper background check before seriously investing in an ICO? Do you know this interesting site? https://www.coincheckup.com The best crypto analysis site by far. Complete in depth investment analysis.",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"links\":[\"https://www.coincheckup.com\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
steemdelegated 7.340 SP to @ferumflex
2017/08/04 05:21:27
delegatorsteem
delegateeferumflex
vesting shares11938.869422 VESTS
Transaction InfoBlock #14271504/Trx 690133ff3ebd87bd55c0d5ffd3c4b01bd90c0d44
View Raw JSON Data
{
  "trx_id": "690133ff3ebd87bd55c0d5ffd3c4b01bd90c0d44",
  "block": 14271504,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-08-04T05:21:27",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "ferumflex",
      "vesting_shares": "11938.869422 VESTS"
    }
  ]
}
ferumflexclaimed reward balance: 0.215 SBD, 0.225 SP
2017/07/26 08:02:15
accountferumflex
reward steem0.000 STEEM
reward sbd0.215 SBD
reward vests365.789738 VESTS
Transaction InfoBlock #14015673/Trx 9d7549b1c6adac8f29c5635503c33bf00e6f3e49
View Raw JSON Data
{
  "trx_id": "9d7549b1c6adac8f29c5635503c33bf00e6f3e49",
  "block": 14015673,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-26T08:02:15",
  "op": [
    "claim_reward_balance",
    {
      "account": "ferumflex",
      "reward_steem": "0.000 STEEM",
      "reward_sbd": "0.215 SBD",
      "reward_vests": "365.789738 VESTS"
    }
  ]
}
ferumflexreceived 0.017 SBD, 0.014 SP author reward for @ferumflex / how-to-run-ico-on-ethereum-s-smart-contracts
2017/07/26 07:52:30
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
sbd payout0.017 SBD
steem payout0.000 STEEM
vesting payout22.726570 VESTS
Transaction InfoBlock #14015477/Virtual Operation #3
View Raw JSON Data
{
  "trx_id": "0000000000000000000000000000000000000000",
  "block": 14015477,
  "trx_in_block": 4294967295,
  "op_in_trx": 0,
  "virtual_op": 3,
  "timestamp": "2017-07-26T07:52:30",
  "op": [
    "author_reward",
    {
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "sbd_payout": "0.017 SBD",
      "steem_payout": "0.000 STEEM",
      "vesting_payout": "22.726570 VESTS"
    }
  ]
}
2017/07/21 16:12:51
parent authorferumflex
parent permlinkhi-steemers
authorkassie-vegas
permlinkre-ferumflex-hi-steemers-20170721t161233071z
title
bodyHello and welcome to Steem! :-) Followed. **Follow me back** &#128536;
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13881617/Trx 643571a7e466e439ea8ba41d091f89d4a7f84c3a
View Raw JSON Data
{
  "trx_id": "643571a7e466e439ea8ba41d091f89d4a7f84c3a",
  "block": 13881617,
  "trx_in_block": 18,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-21T16:12:51",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "kassie-vegas",
      "permlink": "re-ferumflex-hi-steemers-20170721t161233071z",
      "title": "",
      "body": "Hello and welcome to Steem! :-) Followed. **Follow me back** &#128536;",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/21 16:03:15
votercryptolover82
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13881425/Trx 72abfe71847815ec7764dd4245d25045d40f1889
View Raw JSON Data
{
  "trx_id": "72abfe71847815ec7764dd4245d25045d40f1889",
  "block": 13881425,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-21T16:03:15",
  "op": [
    "vote",
    {
      "voter": "cryptolover82",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
2017/07/21 16:03:09
parent authorferumflex
parent permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
authorcryptolover82
permlinkre-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170721t160311633z
title
bodyPlease read this before you buy any Token from ICO site.. you can buy token at much less price at exchange https://steemit.com/trueflip/@cryptolover82/ico-and-hitbtc-exchange
json metadata{"tags":["cryptocurrency"],"links":["https://steemit.com/trueflip/@cryptolover82/ico-and-hitbtc-exchange"],"app":"steemit/0.1"}
Transaction InfoBlock #13881423/Trx 49b9cb81dbf05d09f99706a2ffcbb15c5f77e85e
View Raw JSON Data
{
  "trx_id": "49b9cb81dbf05d09f99706a2ffcbb15c5f77e85e",
  "block": 13881423,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-21T16:03:09",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "author": "cryptolover82",
      "permlink": "re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170721t160311633z",
      "title": "",
      "body": "Please read this before you buy any Token from ICO site.. you can buy token at much less price at exchange\n\nhttps://steemit.com/trueflip/@cryptolover82/ico-and-hitbtc-exchange",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"links\":[\"https://steemit.com/trueflip/@cryptolover82/ico-and-hitbtc-exchange\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/21 05:27:09
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
sbd payout0.013 SBD
steem payout0.000 STEEM
vesting payout22.732693 VESTS
Transaction InfoBlock #13868714/Virtual Operation #3
View Raw JSON Data
{
  "trx_id": "0000000000000000000000000000000000000000",
  "block": 13868714,
  "trx_in_block": 4294967295,
  "op_in_trx": 0,
  "virtual_op": 3,
  "timestamp": "2017-07-21T05:27:09",
  "op": [
    "author_reward",
    {
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "sbd_payout": "0.013 SBD",
      "steem_payout": "0.000 STEEM",
      "vesting_payout": "22.732693 VESTS"
    }
  ]
}
ferumflexreceived 0.185 SBD, 0.197 SP author reward for @ferumflex / hi-steemers
2017/07/20 20:45:57
authorferumflex
permlinkhi-steemers
sbd payout0.185 SBD
steem payout0.000 STEEM
vesting payout320.330475 VESTS
Transaction InfoBlock #13858303/Virtual Operation #8
View Raw JSON Data
{
  "trx_id": "0000000000000000000000000000000000000000",
  "block": 13858303,
  "trx_in_block": 4294967295,
  "op_in_trx": 0,
  "virtual_op": 8,
  "timestamp": "2017-07-20T20:45:57",
  "op": [
    "author_reward",
    {
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "sbd_payout": "0.185 SBD",
      "steem_payout": "0.000 STEEM",
      "vesting_payout": "320.330475 VESTS"
    }
  ]
}
2017/07/20 10:20:45
required auths[]
required posting auths["ferumflex"]
idfollow
json["follow",{"follower":"ferumflex","following":"sowellsvt","what":["blog"]}]
Transaction InfoBlock #13845825/Trx 5ce208d2e646c4b3370cb59f3f5dc7cfda90caf1
View Raw JSON Data
{
  "trx_id": "5ce208d2e646c4b3370cb59f3f5dc7cfda90caf1",
  "block": 13845825,
  "trx_in_block": 12,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-20T10:20:45",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"ferumflex\",\"following\":\"sowellsvt\",\"what\":[\"blog\"]}]"
    }
  ]
}
ferumflexupvoted (100.00%) @ferumflex / hi-steemers
2017/07/19 10:39:30
voterferumflex
authorferumflex
permlinkhi-steemers
weight10000 (100.00%)
Transaction InfoBlock #13817411/Trx ec9db1e7345b91bb3481d4c541a722cbf50d9477
View Raw JSON Data
{
  "trx_id": "ec9db1e7345b91bb3481d4c541a722cbf50d9477",
  "block": 13817411,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T10:39:30",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 10000
    }
  ]
}
2017/07/19 10:39:18
voterferumflex
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
weight10000 (100.00%)
Transaction InfoBlock #13817407/Trx 1d88f7b22e693654c36374172752e6873b8462cc
View Raw JSON Data
{
  "trx_id": "1d88f7b22e693654c36374172752e6873b8462cc",
  "block": 13817407,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T10:39:18",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "weight": 10000
    }
  ]
}
2017/07/19 10:39:09
voterferumflex
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13817404/Trx 07e42f67fa66008a7a172e189a8fab42232f299b
View Raw JSON Data
{
  "trx_id": "07e42f67fa66008a7a172e189a8fab42232f299b",
  "block": 13817404,
  "trx_in_block": 22,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T10:39:09",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
2017/07/19 08:39:39
voterjagg
authorferumflex
permlinkre-nikop2-re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t083344629z
weight10000 (100.00%)
Transaction InfoBlock #13815014/Trx 43ef74afb08547c59fa61d93054066159fba8b64
View Raw JSON Data
{
  "trx_id": "43ef74afb08547c59fa61d93054066159fba8b64",
  "block": 13815014,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:39:39",
  "op": [
    "vote",
    {
      "voter": "jagg",
      "author": "ferumflex",
      "permlink": "re-nikop2-re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t083344629z",
      "weight": 10000
    }
  ]
}
2017/07/19 08:36:39
voterjagg
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13814954/Trx afddc2a236df5ad9d052d0077e5ace266e30f7ad
View Raw JSON Data
{
  "trx_id": "afddc2a236df5ad9d052d0077e5ace266e30f7ad",
  "block": 13814954,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:36:39",
  "op": [
    "vote",
    {
      "voter": "jagg",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
ferumflexcancelled power down
2017/07/19 08:35:45
accountferumflex
vesting shares0.000000 VESTS
Transaction InfoBlock #13814936/Trx 612f233b1a4216bd2983fa6a2cdb5e8fde3e83ae
View Raw JSON Data
{
  "trx_id": "612f233b1a4216bd2983fa6a2cdb5e8fde3e83ae",
  "block": 13814936,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:35:45",
  "op": [
    "withdraw_vesting",
    {
      "account": "ferumflex",
      "vesting_shares": "0.000000 VESTS"
    }
  ]
}
2017/07/19 08:33:45
parent authornikop2
parent permlinkre-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t082222477z
authorferumflex
permlinkre-nikop2-re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t083344629z
title
bodyThank you)
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13814896/Trx 56b641e4875ec643cb0bfd7b22fb693275063fe7
View Raw JSON Data
{
  "trx_id": "56b641e4875ec643cb0bfd7b22fb693275063fe7",
  "block": 13814896,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:33:45",
  "op": [
    "comment",
    {
      "parent_author": "nikop2",
      "parent_permlink": "re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t082222477z",
      "author": "ferumflex",
      "permlink": "re-nikop2-re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t083344629z",
      "title": "",
      "body": "Thank you)",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/19 08:33:39
required auths[]
required posting auths["ferumflex"]
idfollow
json["follow",{"follower":"ferumflex","following":"nikop2","what":["blog"]}]
Transaction InfoBlock #13814894/Trx e31b698b2270a5d9a942dc5086ef64c87234991e
View Raw JSON Data
{
  "trx_id": "e31b698b2270a5d9a942dc5086ef64c87234991e",
  "block": 13814894,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:33:39",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "ferumflex"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"ferumflex\",\"following\":\"nikop2\",\"what\":[\"blog\"]}]"
    }
  ]
}
2017/07/19 08:27:30
voterferumflex
authorroyalmacro
permlinkhave-you-heard-about-byteball-on-the-9th-july-i-received-about-usd280k-revealed-plus-hidden-values-worth-gbyte-absolutely-free
weight10000 (100.00%)
Transaction InfoBlock #13814771/Trx 7f85737d083774e9cd9f3449ae8252609631b3af
View Raw JSON Data
{
  "trx_id": "7f85737d083774e9cd9f3449ae8252609631b3af",
  "block": 13814771,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:27:30",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "royalmacro",
      "permlink": "have-you-heard-about-byteball-on-the-9th-july-i-received-about-usd280k-revealed-plus-hidden-values-worth-gbyte-absolutely-free",
      "weight": 10000
    }
  ]
}
2017/07/19 08:22:57
voterferumflex
authorthecrytotrader
permlinkfinally-earning-curation-rewards-2017719t134349205z
weight10000 (100.00%)
Transaction InfoBlock #13814680/Trx 7e76930015f033ef19f01f49f2526d81a4f37559
View Raw JSON Data
{
  "trx_id": "7e76930015f033ef19f01f49f2526d81a4f37559",
  "block": 13814680,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:22:57",
  "op": [
    "vote",
    {
      "voter": "ferumflex",
      "author": "thecrytotrader",
      "permlink": "finally-earning-curation-rewards-2017719t134349205z",
      "weight": 10000
    }
  ]
}
2017/07/19 08:22:24
parent authorferumflex
parent permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
authornikop2
permlinkre-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t082222477z
title
bodyGood explanation! I'm following you :)
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13814669/Trx 69ef527a283ec2022db05eb33f318cc870497578
View Raw JSON Data
{
  "trx_id": "69ef527a283ec2022db05eb33f318cc870497578",
  "block": 13814669,
  "trx_in_block": 7,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:22:24",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "author": "nikop2",
      "permlink": "re-ferumflex-how-to-run-ico-on-ethereum-s-smart-contracts-20170719t082222477z",
      "title": "",
      "body": "Good explanation! \nI'm following you :)",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/19 08:22:21
voternikop2
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13814668/Trx 3e990f1e137d06cc1a8b97325b50f74babb79790
View Raw JSON Data
{
  "trx_id": "3e990f1e137d06cc1a8b97325b50f74babb79790",
  "block": 13814668,
  "trx_in_block": 8,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:22:21",
  "op": [
    "vote",
    {
      "voter": "nikop2",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
2017/07/19 08:18:30
voterproctologic
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight100 (1.00%)
Transaction InfoBlock #13814591/Trx 15f1b23698ba431a060964a717aef66f7ef20a51
View Raw JSON Data
{
  "trx_id": "15f1b23698ba431a060964a717aef66f7ef20a51",
  "block": 13814591,
  "trx_in_block": 9,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T08:18:30",
  "op": [
    "vote",
    {
      "voter": "proctologic",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 100
    }
  ]
}
2017/07/19 07:57:33
voterdavid.levin
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13814172/Trx 6c0cbd84b331bd192f92e61b9bfdbb1e795c7f26
View Raw JSON Data
{
  "trx_id": "6c0cbd84b331bd192f92e61b9bfdbb1e795c7f26",
  "block": 13814172,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T07:57:33",
  "op": [
    "vote",
    {
      "voter": "david.levin",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
2017/07/19 07:55:33
voterlakov
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
weight10000 (100.00%)
Transaction InfoBlock #13814132/Trx 777ca10adf2364106a6b3169e926b5f4a03aa5a0
View Raw JSON Data
{
  "trx_id": "777ca10adf2364106a6b3169e926b5f4a03aa5a0",
  "block": 13814132,
  "trx_in_block": 9,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T07:55:33",
  "op": [
    "vote",
    {
      "voter": "lakov",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "weight": 10000
    }
  ]
}
2017/07/19 07:52:30
parent author
parent permlinkcryptocurrency
authorferumflex
permlinkhow-to-run-ico-on-ethereum-s-smart-contracts
titleHow to run ICO on Ethereum's smart contracts?
body![logo.png](https://steemitimages.com/DQmfNF4bHvH4a4x6zNsAhyLDqhCuHqvXRneut2HmKpyzMCP/d.png) Hello! Today we have a lot if ICO's and ICO aren't run only lazy people. For organization you need a lot of time\money for writing white paper, advertisement on forum, creating landing page, creating community and the most important you should have a good idea and possibility to implement it. I am not going to tell you about all steps but only about creating smart contracts that accepts money(ethereum) and sends tokens according to the exchange rate. # Preparing We are going to use Ethereum wallet for uploading contracts and for test we will upload contracts to TEST NET. For this you need to run Ethereum wallet and switch to TEST NET. Wait some time until blocks are loaded, that can take few hours. For uploading our contract we need some test ethereum (testnet ropsten). You can get it on site http://faucet.ropsten.be:3001/ or write on comments I will send you a bit. # Creating and uploading contract We will create contract, that mint tokens when someone sends money to contract address. Contract will send back tokens according to the rate exchange. Also, ICO will work till defined block number and after that it will stop minting tokens. On the top select Contract, then Deploy new contract, copy and paste contract code https://gist.github.com/FerumFlex/1e35b45e13bf3fcadc45e2ae46245451. After this select contract name Crowdsale(name of contract) in the drop down fill other variables like on screenshot: https://steemitimages.com/DQmRme765jt9s4wMXBfYMQZbKZAW3FYSCMAYHNpAJhimpx4/s4rl25rkTeKvbm9BM-4-cA.png Few words about params Start block - Number of block when ICO starts. You can set block in the past and ICO starts immediately. I selected block number 1290000. End block - Number of block when ICO ends. I selected 1400000, this is approximately 76 days. Rate - this exchange rate. How many tokens will be minted for 1 ETH. Wallet - Address of YOUR wallet, contract will send ether to this wallet. Then click Deploy and set gas limit around 2000000 or greater and click Send. # Testing So your transaction was committed, and You need address of ICO contract and address of token(two different addressed). To get ICO contract address click on the transaction and click on link To: Crowdsale. See screenshot: https://steemitimages.com/DQma5ZLLCwhcS8xT4hVgJDJZRqukPaMCbHs8SwkjJnMbLHZ/SXKaqPjnTUqzg3t8wlLGbQ.png At the top you can see name of the contract (Crowdsale) and below it you can find address of the ICO contract (for my screenshot this is 0x9BeC1ABc21e7C60FfAacA5bAD561234C0f90c90A). At the end of the page you can find address of token(for my case this is 0x4E686a74dF3a00e68c451980585b5FC361aC118f). To add token to the list, click on Contracts and find button Watch Token at the bottom. You need to copy your token address at the input and click Ok. And now when someone sends ether to the ICO contract we will get ether in our wallet. Awesome :) # This is awesome, but I do not want to repeat these steps... You can use contracts that I uploaded, Send ether(ONLY in testnet ropsten) to address 0x9BeC1ABc21e7C60FfAacA5bAD561234C0f90c90A and you will get your tokens. Test ether you can get on site http://faucet.ropsten.be:3001/ or write me your address. Do not forget to add token to watching list. # Conclusion This is simple example of the ICO contract, but you can find more examples at https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts Happy ICO!!!
json metadata{"tags":["cryptocurrency","money","crypto","ethereum","crowdsale"],"image":["https://steemitimages.com/DQmfNF4bHvH4a4x6zNsAhyLDqhCuHqvXRneut2HmKpyzMCP/d.png","https://steemitimages.com/DQmRme765jt9s4wMXBfYMQZbKZAW3FYSCMAYHNpAJhimpx4/s4rl25rkTeKvbm9BM-4-cA.png","https://steemitimages.com/DQma5ZLLCwhcS8xT4hVgJDJZRqukPaMCbHs8SwkjJnMbLHZ/SXKaqPjnTUqzg3t8wlLGbQ.png"],"links":["http://faucet.ropsten.be:3001/","https://gist.github.com/FerumFlex/1e35b45e13bf3fcadc45e2ae46245451","https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #13814071/Trx 2a87627ed07792fa490eba0da71305b75777c045
View Raw JSON Data
{
  "trx_id": "2a87627ed07792fa490eba0da71305b75777c045",
  "block": 13814071,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-19T07:52:30",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cryptocurrency",
      "author": "ferumflex",
      "permlink": "how-to-run-ico-on-ethereum-s-smart-contracts",
      "title": "How to run ICO on Ethereum's smart contracts?",
      "body": "![logo.png](https://steemitimages.com/DQmfNF4bHvH4a4x6zNsAhyLDqhCuHqvXRneut2HmKpyzMCP/d.png)\n\nHello! Today we have a lot if ICO's and ICO aren't run only lazy people.  For organization you need a lot of time\\money for writing white paper, advertisement on forum, creating landing page, creating community and the most important you should have a good idea and possibility to implement it. I am not going to tell you about all steps but only about creating smart contracts that accepts money(ethereum) and sends tokens according to the exchange rate.\n\n# Preparing\nWe are going to use Ethereum wallet for uploading contracts and for test we will upload contracts to TEST NET. For this you need to run Ethereum wallet and switch to TEST NET. Wait some time until blocks are loaded, that can take few hours. For uploading our contract we need some test ethereum (testnet ropsten). You can get it on site http://faucet.ropsten.be:3001/ or write on comments I will send you a bit.\n\n# Creating and uploading contract\nWe will create contract, that mint tokens when someone sends money to contract address. Contract will send back tokens according to the rate exchange. Also, ICO will work till defined block number and after that it will stop minting tokens. On the top select Contract, then Deploy new contract, copy and paste contract code https://gist.github.com/FerumFlex/1e35b45e13bf3fcadc45e2ae46245451. After this select contract name Crowdsale(name of contract) in the drop down fill other variables like on screenshot:\n\nhttps://steemitimages.com/DQmRme765jt9s4wMXBfYMQZbKZAW3FYSCMAYHNpAJhimpx4/s4rl25rkTeKvbm9BM-4-cA.png\n\nFew words about params\n\nStart block - Number of block when ICO starts. You can set block in the past and ICO starts immediately. I selected block number 1290000. \n\nEnd block - Number of block when ICO ends. I selected 1400000, this is approximately 76 days.\n\nRate - this exchange rate. How many tokens will be minted for 1 ETH.\n\nWallet - Address of YOUR wallet, contract will send ether to this wallet.\n\nThen click Deploy and set gas limit around 2000000 or greater and click Send.\n\n# Testing\nSo your transaction was committed, and You need address of ICO contract and address of token(two different addressed). To get ICO contract address click on the transaction and click on link To: Crowdsale. See screenshot:\n\nhttps://steemitimages.com/DQma5ZLLCwhcS8xT4hVgJDJZRqukPaMCbHs8SwkjJnMbLHZ/SXKaqPjnTUqzg3t8wlLGbQ.png\n\nAt the top you can see name of the contract (Crowdsale) and below it you can find address of the ICO contract (for my screenshot this is 0x9BeC1ABc21e7C60FfAacA5bAD561234C0f90c90A). At the end of the page you can find address of token(for my case this is 0x4E686a74dF3a00e68c451980585b5FC361aC118f). To add token to the list, click on Contracts and find button Watch Token at the bottom. You need to copy your token address at the input and click Ok. And now when someone sends ether to the ICO contract we will get ether in our wallet. Awesome :)\n\n# This is awesome, but I do not want to repeat these steps...\nYou can use contracts that I uploaded, Send ether(ONLY in testnet ropsten) to address 0x9BeC1ABc21e7C60FfAacA5bAD561234C0f90c90A and you will get your tokens. Test ether you can get on site http://faucet.ropsten.be:3001/ or write me your address. Do not forget to add token to watching list.\n\n# Conclusion\n\nThis is simple example of the ICO contract, but you can find more examples at https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts\n\nHappy ICO!!!",
      "json_metadata": "{\"tags\":[\"cryptocurrency\",\"money\",\"crypto\",\"ethereum\",\"crowdsale\"],\"image\":[\"https://steemitimages.com/DQmfNF4bHvH4a4x6zNsAhyLDqhCuHqvXRneut2HmKpyzMCP/d.png\",\"https://steemitimages.com/DQmRme765jt9s4wMXBfYMQZbKZAW3FYSCMAYHNpAJhimpx4/s4rl25rkTeKvbm9BM-4-cA.png\",\"https://steemitimages.com/DQma5ZLLCwhcS8xT4hVgJDJZRqukPaMCbHs8SwkjJnMbLHZ/SXKaqPjnTUqzg3t8wlLGbQ.png\"],\"links\":[\"http://faucet.ropsten.be:3001/\",\"https://gist.github.com/FerumFlex/1e35b45e13bf3fcadc45e2ae46245451\",\"https://github.com/OpenZeppelin/zeppelin-solidity/tree/master/contracts\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2017/07/14 14:10:03
voterjagg
authorferumflex
permlinkre-wekkel-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055438874z
weight10000 (100.00%)
Transaction InfoBlock #13677731/Trx c1571fc98c6c3b20b0b5b3e9484cfd7580d8dbbf
View Raw JSON Data
{
  "trx_id": "c1571fc98c6c3b20b0b5b3e9484cfd7580d8dbbf",
  "block": 13677731,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T14:10:03",
  "op": [
    "vote",
    {
      "voter": "jagg",
      "author": "ferumflex",
      "permlink": "re-wekkel-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055438874z",
      "weight": 10000
    }
  ]
}
2017/07/14 14:10:00
voterjagg
authorferumflex
permlinkre-funkit-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053557591z
weight10000 (100.00%)
Transaction InfoBlock #13677730/Trx 148bcabbd79b03a6bcdafa008b9384e341a70455
View Raw JSON Data
{
  "trx_id": "148bcabbd79b03a6bcdafa008b9384e341a70455",
  "block": 13677730,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T14:10:00",
  "op": [
    "vote",
    {
      "voter": "jagg",
      "author": "ferumflex",
      "permlink": "re-funkit-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053557591z",
      "weight": 10000
    }
  ]
}
2017/07/14 14:08:27
voterjagg
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
weight10000 (100.00%)
Transaction InfoBlock #13677699/Trx c9d30efd66c28ccfd848f7b7b973f971a2cb48bb
View Raw JSON Data
{
  "trx_id": "c9d30efd66c28ccfd848f7b7b973f971a2cb48bb",
  "block": 13677699,
  "trx_in_block": 16,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T14:08:27",
  "op": [
    "vote",
    {
      "voter": "jagg",
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "weight": 10000
    }
  ]
}
2017/07/14 11:45:48
parent authorferumflex
parent permlinkre-larksongbird-re-ferumflex-hi-steemers-20170714t103604038z
authorlarksongbird
permlinkre-ferumflex-re-larksongbird-re-ferumflex-hi-steemers-20170714t114545569z
title
bodyNice town! Amazing buildings
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13674856/Trx 18ee00d41eac7f763df2b5c4d3f92f363221acc9
View Raw JSON Data
{
  "trx_id": "18ee00d41eac7f763df2b5c4d3f92f363221acc9",
  "block": 13674856,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T11:45:48",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "re-larksongbird-re-ferumflex-hi-steemers-20170714t103604038z",
      "author": "larksongbird",
      "permlink": "re-ferumflex-re-larksongbird-re-ferumflex-hi-steemers-20170714t114545569z",
      "title": "",
      "body": "Nice town! Amazing buildings",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 10:36:03
parent authorlarksongbird
parent permlinkre-ferumflex-hi-steemers-20170714t091629955z
authorferumflex
permlinkre-larksongbird-re-ferumflex-hi-steemers-20170714t103604038z
title
bodyIn Lviv
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13673467/Trx 7180a1a2ef2fa6694f109b395766e918a924d8cb
View Raw JSON Data
{
  "trx_id": "7180a1a2ef2fa6694f109b395766e918a924d8cb",
  "block": 13673467,
  "trx_in_block": 24,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T10:36:03",
  "op": [
    "comment",
    {
      "parent_author": "larksongbird",
      "parent_permlink": "re-ferumflex-hi-steemers-20170714t091629955z",
      "author": "ferumflex",
      "permlink": "re-larksongbird-re-ferumflex-hi-steemers-20170714t103604038z",
      "title": "",
      "body": "In Lviv",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 09:16:33
parent authorferumflex
parent permlinkhi-steemers
authorlarksongbird
permlinkre-ferumflex-hi-steemers-20170714t091629955z
title
bodyWelcome to Steemit Anton! Where in Ukraine do you live?
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13671882/Trx 7fcf10fb1ea735f593b34c1d7de8886ba624b0ea
View Raw JSON Data
{
  "trx_id": "7fcf10fb1ea735f593b34c1d7de8886ba624b0ea",
  "block": 13671882,
  "trx_in_block": 22,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T09:16:33",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "larksongbird",
      "permlink": "re-ferumflex-hi-steemers-20170714t091629955z",
      "title": "",
      "body": "Welcome to Steemit Anton! Where in Ukraine do you live?",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 06:19:27
votersteemitboard
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
weight100 (1.00%)
Transaction InfoBlock #13668350/Trx e921d34186457d5bf5a7ef5305b3b5a698f67438
View Raw JSON Data
{
  "trx_id": "e921d34186457d5bf5a7ef5305b3b5a698f67438",
  "block": 13668350,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T06:19:27",
  "op": [
    "vote",
    {
      "voter": "steemitboard",
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "weight": 100
    }
  ]
}
2017/07/14 06:19:24
parent authorferumflex
parent permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
authorsteemitboard
permlinksteemitboard-notify-ferumflex-20170714t061926000z
title
bodyCongratulations @ferumflex! You have completed some achievement on Steemit and have been rewarded with new badge(s) : [![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/voted.png)](http://steemitboard.com/@ferumflex) Award for the number of upvotes received [![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/firstcomment.png)](http://steemitboard.com/@ferumflex) You made your First Comment Click on any badge to view your own Board of Honor on SteemitBoard. For more information about SteemitBoard, click [here](https://steemit.com/@steemitboard) If you no longer want to receive notifications, reply to this comment with the word `STOP` > By upvoting this notification, you can help all Steemit users. Learn how [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)!
json metadata{"image":["https://steemitboard.com/img/notifications.png"]}
Transaction InfoBlock #13668349/Trx fd7064afcb1268a1f2e664f7129c55d7013cf926
View Raw JSON Data
{
  "trx_id": "fd7064afcb1268a1f2e664f7129c55d7013cf926",
  "block": 13668349,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T06:19:24",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "author": "steemitboard",
      "permlink": "steemitboard-notify-ferumflex-20170714t061926000z",
      "title": "",
      "body": "Congratulations @ferumflex! You have completed some achievement on Steemit and have been rewarded with new badge(s) :\n\n[![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/voted.png)](http://steemitboard.com/@ferumflex) Award for the number of upvotes received\n[![](https://steemitimages.com/70x80/http://steemitboard.com/notifications/firstcomment.png)](http://steemitboard.com/@ferumflex) You made your First Comment\n\nClick on any badge to view your own Board of Honor on SteemitBoard.\nFor more information about SteemitBoard, click [here](https://steemit.com/@steemitboard)\n\nIf you no longer want to receive notifications, reply to this comment with the word `STOP`\n\n> By upvoting this notification, you can help all Steemit users. Learn how [here](https://steemit.com/steemitboard/@steemitboard/http-i-cubeupload-com-7ciqeo-png)!",
      "json_metadata": "{\"image\":[\"https://steemitboard.com/img/notifications.png\"]}"
    }
  ]
}
2017/07/14 05:54:39
parent authorwekkel
parent permlinkre-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055123082z
authorferumflex
permlinkre-wekkel-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055438874z
title
bodyThank you, Right now I am actively develop it, if you have some ideas please let me know.
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13667855/Trx 85fe76b46b93b9086217504e6d9883ce51d867a2
View Raw JSON Data
{
  "trx_id": "85fe76b46b93b9086217504e6d9883ce51d867a2",
  "block": 13667855,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:54:39",
  "op": [
    "comment",
    {
      "parent_author": "wekkel",
      "parent_permlink": "re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055123082z",
      "author": "ferumflex",
      "permlink": "re-wekkel-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055438874z",
      "title": "",
      "body": "Thank you, Right now I am actively develop it, if you have some ideas please let me know.",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 05:51:24
parent authorferumflex
parent permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
authorwekkel
permlinkre-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055123082z
title
bodyTelegram is on a roll lately with brilliant guys developing these nice bots. Keep up the good work. Perhaps this can morph into a Telegram multiwallet over time.
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13667790/Trx 654108e5add3e0c9c31634c5ac2ba8ff449e33ef
View Raw JSON Data
{
  "trx_id": "654108e5add3e0c9c31634c5ac2ba8ff449e33ef",
  "block": 13667790,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:51:24",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "author": "wekkel",
      "permlink": "re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t055123082z",
      "title": "",
      "body": "Telegram is on a roll lately with brilliant guys developing these nice bots. Keep up the good work. Perhaps this can morph into a Telegram multiwallet over time.",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 05:49:12
voterwekkel
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
weight10000 (100.00%)
Transaction InfoBlock #13667746/Trx 44cd0c971fd6696bc9f507bd91fec2cba7bfffee
View Raw JSON Data
{
  "trx_id": "44cd0c971fd6696bc9f507bd91fec2cba7bfffee",
  "block": 13667746,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:49:12",
  "op": [
    "vote",
    {
      "voter": "wekkel",
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "weight": 10000
    }
  ]
}
2017/07/14 05:35:57
parent authorfunkit
parent permlinkre-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053129891z
authorferumflex
permlinkre-funkit-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053557591z
title
bodyDo not worry) My wallets also in this list)
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13667483/Trx 4a679fcb6909975070124cf1d32c00be681ca65c
View Raw JSON Data
{
  "trx_id": "4a679fcb6909975070124cf1d32c00be681ca65c",
  "block": 13667483,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:35:57",
  "op": [
    "comment",
    {
      "parent_author": "funkit",
      "parent_permlink": "re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053129891z",
      "author": "ferumflex",
      "permlink": "re-funkit-re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053557591z",
      "title": "",
      "body": "Do not worry) My wallets also in this list)",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 05:31:30
parent authorferumflex
parent permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
authorfunkit
permlinkre-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053129891z
title
bodyAgh! Don't let the tax man know!
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13667395/Trx 0e31ab7c13763488be51ad8e23ca894403b263e6
View Raw JSON Data
{
  "trx_id": "0e31ab7c13763488be51ad8e23ca894403b263e6",
  "block": 13667395,
  "trx_in_block": 11,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:31:30",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "author": "funkit",
      "permlink": "re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t053129891z",
      "title": "",
      "body": "Agh! Don't let the tax man know!",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 05:27:48
parent authorferumflex
parent permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
authorjoeyarnoldvn
permlinkre-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t052747778z
title
bodywow
json metadata{"tags":["cryptocurrency"],"app":"steemit/0.1"}
Transaction InfoBlock #13667321/Trx 2eb4d85bb57b33a441a3d8e37d81d411ba05a864
View Raw JSON Data
{
  "trx_id": "2eb4d85bb57b33a441a3d8e37d81d411ba05a864",
  "block": 13667321,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:27:48",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "author": "joeyarnoldvn",
      "permlink": "re-ferumflex-bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies-20170714t052747778z",
      "title": "",
      "body": "wow",
      "json_metadata": "{\"tags\":[\"cryptocurrency\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/14 05:27:09
parent author
parent permlinkcryptocurrency
authorferumflex
permlinkbitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies
titleBitcoin savings - telegram bot that show your savings in cryptocurrencies
bodyHello fellas! https://steemitimages.com/DQmZyMG9ci3yaovoVQpYcZj9upzKfgdcWmjizuV26i5HSgF/wallet.png Recently I wrote bot, that shows your capitalizations in USD for your crypto wallets. Bot also counts tokens for Waves and Etheretum wallets, builds graphs, show history of changing your capitalization. You need to enter just your wallet address. I wrote it for myself, because it is hard to track my crypto portfolio. Also I personally find very useful when bot sends me notification about changes in my balance. This is awesome feature. Link to the bot - https://telegram.me/bitcoin_savings_bot or @bitcoin_savings_bot Supported currencies: BTC, ETH, ETC, Waves, XRP, NEM, XLM, LTC, Stratis, BTS, ANS, LSK. Supported tokens (wallets eth, waves): GNT, REP, Pluton, Gnosis, MKR, BAT, SNGLS, DGD, ICONOMI, Aragon, FirstBlood, RLC, Wings, Melon, trust, SWT, GUP, Xaurum, Edgeless, Bcap, TokenCard, Taas, TIME, vSlice, Lunyr, Bancor, Storj, WCT, bankcoin, INCNT, RBX, MER, TKS, wavesgo, MGO, BTC, MRT Languages: English \ Русcкий \ Українська Main functions: - Shows your savings in USD across all wallets - Shows beautiful graphs - Sends your notifications when your balance changes - Supports mange currencies and tokens Donations: BTC 1J2ZSc97yzrGihULVMPCtEZs7zUDD6j7v ETH 0x86735BCB1990CE2E2C264F850732255a7D9dEC21 Your testimonials\advices\critics you can send there or in the bot. Happy investing in crypto world!!!
json metadata{"tags":["cryptocurrency","bitcoin","ethereum","blockchain"],"users":["bitcoin"],"image":["https://steemitimages.com/DQmZyMG9ci3yaovoVQpYcZj9upzKfgdcWmjizuV26i5HSgF/wallet.png"],"links":["https://telegram.me/bitcoin_savings_bot"],"app":"steemit/0.1","format":"markdown"}
Transaction InfoBlock #13667308/Trx 5b716109d9fbbbb9c09151bb4954d5d440909c41
View Raw JSON Data
{
  "trx_id": "5b716109d9fbbbb9c09151bb4954d5d440909c41",
  "block": 13667308,
  "trx_in_block": 15,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T05:27:09",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cryptocurrency",
      "author": "ferumflex",
      "permlink": "bitcoin-savings-telegram-bot-that-show-your-savings-in-cryptocurrencies",
      "title": "Bitcoin savings - telegram bot that show your savings in cryptocurrencies",
      "body": "Hello fellas!\n\nhttps://steemitimages.com/DQmZyMG9ci3yaovoVQpYcZj9upzKfgdcWmjizuV26i5HSgF/wallet.png\n\nRecently I wrote bot, that shows your capitalizations in USD for your crypto wallets. Bot also counts tokens for Waves and Etheretum wallets, builds graphs, show history of changing your capitalization. You need to enter just your wallet address.\n\nI wrote it for myself, because it is hard to track my crypto portfolio. Also I personally find very useful when bot sends me notification about changes in my balance. This is awesome feature.\n\nLink to the bot - https://telegram.me/bitcoin_savings_bot\nor @bitcoin_savings_bot\n\nSupported currencies: BTC, ETH, ETC, Waves, XRP, NEM, XLM, LTC, Stratis, BTS, ANS, LSK.\n\nSupported tokens (wallets eth, waves): GNT, REP, Pluton, Gnosis, MKR, BAT, SNGLS, DGD, ICONOMI, Aragon, FirstBlood, RLC, Wings, Melon, trust, SWT, GUP, Xaurum, Edgeless, Bcap, TokenCard, Taas, TIME, vSlice, Lunyr, Bancor, Storj, WCT, bankcoin, INCNT, RBX, MER, TKS, wavesgo, MGO, BTC, MRT\n\nLanguages: English \\ Русcкий \\ Українська\n\nMain functions:\n\n- Shows your savings in USD across all wallets\n- Shows beautiful graphs\n- Sends your notifications when your balance changes\n- Supports mange currencies and tokens\n\nDonations:\nBTC 1J2ZSc97yzrGihULVMPCtEZs7zUDD6j7v\nETH 0x86735BCB1990CE2E2C264F850732255a7D9dEC21\n\nYour testimonials\\advices\\critics you can send there or in the bot.\n\nHappy investing in crypto world!!!",
      "json_metadata": "{\"tags\":[\"cryptocurrency\",\"bitcoin\",\"ethereum\",\"blockchain\"],\"users\":[\"bitcoin\"],\"image\":[\"https://steemitimages.com/DQmZyMG9ci3yaovoVQpYcZj9upzKfgdcWmjizuV26i5HSgF/wallet.png\"],\"links\":[\"https://telegram.me/bitcoin_savings_bot\"],\"app\":\"steemit/0.1\",\"format\":\"markdown\"}"
    }
  ]
}
2017/07/14 04:05:09
parent authorferumflex
parent permlinkhi-steemers
authorleesujae17
permlinkre-ferumflex-hi-steemers-20170714t040508055z
title
bodyhello~ ferumflex, Follow & Upvote is a You and I great strength~
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13665673/Trx 74184e3c60481799fef4de0b65cf452e0f1bea21
View Raw JSON Data
{
  "trx_id": "74184e3c60481799fef4de0b65cf452e0f1bea21",
  "block": 13665673,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-14T04:05:09",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "leesujae17",
      "permlink": "re-ferumflex-hi-steemers-20170714t040508055z",
      "title": "",
      "body": "hello~  ferumflex, Follow & Upvote is a You and I great strength~",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/13 22:22:45
parent authorferumflex
parent permlinkhi-steemers
authordigitalplayer
permlink20170713t222157559z
title
bodyWelcome and Thank You for being with us!! Following your Blog now
json metadata{"tags":["welcome"],"app":"digitalplayer"}
Transaction InfoBlock #13658837/Trx c63210ab6882b725524a6c6b1e0e0ee4c714b2bb
View Raw JSON Data
{
  "trx_id": "c63210ab6882b725524a6c6b1e0e0ee4c714b2bb",
  "block": 13658837,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T22:22:45",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "digitalplayer",
      "permlink": "20170713t222157559z",
      "title": "",
      "body": "Welcome and Thank You for being with us!! Following your Blog now",
      "json_metadata": "{\"tags\":[\"welcome\"],\"app\":\"digitalplayer\"}"
    }
  ]
}
2017/07/13 22:22:06
parent authorferumflex
parent permlinkhi-steemers
authorkccrypto
permlinkre-ferumflex-hi-steemers-20170713t222207896z
title
bodyWelcome to steemit, Anton! I think you are in the perfect community for your work to be shared. Obviously, most people here love cryptocurrency and anything related to it. So sharing your knowledge of smart contracts among other things will probably be a hit! Best of luck to you!
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13658824/Trx a3034a1d588270f6b6e7271304366c721df3084e
View Raw JSON Data
{
  "trx_id": "a3034a1d588270f6b6e7271304366c721df3084e",
  "block": 13658824,
  "trx_in_block": 13,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T22:22:06",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "kccrypto",
      "permlink": "re-ferumflex-hi-steemers-20170713t222207896z",
      "title": "",
      "body": "Welcome to steemit, Anton! \n\nI think you are in the perfect community for your work to be shared. Obviously, most people here love cryptocurrency and anything related to it. So sharing your knowledge of smart contracts among other things will probably be a hit!\n\nBest of luck to you!",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
kccryptoupvoted (10.00%) @ferumflex / hi-steemers
2017/07/13 22:21:09
voterkccrypto
authorferumflex
permlinkhi-steemers
weight1000 (10.00%)
Transaction InfoBlock #13658805/Trx 28a3fe98707a2d44e259b3ea86be8bcbb1f72b46
View Raw JSON Data
{
  "trx_id": "28a3fe98707a2d44e259b3ea86be8bcbb1f72b46",
  "block": 13658805,
  "trx_in_block": 14,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T22:21:09",
  "op": [
    "vote",
    {
      "voter": "kccrypto",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 1000
    }
  ]
}
inukupvoted (1.00%) @ferumflex / hi-steemers
2017/07/13 21:50:54
voterinuk
authorferumflex
permlinkhi-steemers
weight100 (1.00%)
Transaction InfoBlock #13658200/Trx 1099008838dfd3a7d0dd94dbf100f6af41794da0
View Raw JSON Data
{
  "trx_id": "1099008838dfd3a7d0dd94dbf100f6af41794da0",
  "block": 13658200,
  "trx_in_block": 10,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:50:54",
  "op": [
    "vote",
    {
      "voter": "inuk",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 100
    }
  ]
}
jordanlindseysent 0.001 SBD to @ferumflex- "Welcome :) have fun & enjoy some Steemit humor, https://steemit.com/steemit/@jordanlindsey/steemit-reward-pool-being-distributed-on-blockchain-video-fun"
2017/07/13 21:42:36
fromjordanlindsey
toferumflex
amount0.001 SBD
memoWelcome :) have fun & enjoy some Steemit humor, https://steemit.com/steemit/@jordanlindsey/steemit-reward-pool-being-distributed-on-blockchain-video-fun
Transaction InfoBlock #13658034/Trx e13a2cdf1790a7042fbf6bec446f6946941badf0
View Raw JSON Data
{
  "trx_id": "e13a2cdf1790a7042fbf6bec446f6946941badf0",
  "block": 13658034,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:42:36",
  "op": [
    "transfer",
    {
      "from": "jordanlindsey",
      "to": "ferumflex",
      "amount": "0.001 SBD",
      "memo": "Welcome :) have fun & enjoy some Steemit humor, https://steemit.com/steemit/@jordanlindsey/steemit-reward-pool-being-distributed-on-blockchain-video-fun"
    }
  ]
}
2017/07/13 21:42:03
parent authorferumflex
parent permlinkhi-steemers
authordaveks
permlinkre-ferumflex-hi-steemers-20170713t214203295z
title
bodyWelcome to Steemit!
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13658023/Trx 6c94234650f9ab3b177abeb9e67bd25ad461d0e6
View Raw JSON Data
{
  "trx_id": "6c94234650f9ab3b177abeb9e67bd25ad461d0e6",
  "block": 13658023,
  "trx_in_block": 25,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:42:03",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "daveks",
      "permlink": "re-ferumflex-hi-steemers-20170713t214203295z",
      "title": "",
      "body": "Welcome to Steemit!",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
daveksupvoted (1.00%) @ferumflex / hi-steemers
2017/07/13 21:41:42
voterdaveks
authorferumflex
permlinkhi-steemers
weight100 (1.00%)
Transaction InfoBlock #13658016/Trx e8f400eb2fe28df7b2ddcdc7db5b6c6b6db5e598
View Raw JSON Data
{
  "trx_id": "e8f400eb2fe28df7b2ddcdc7db5b6c6b6db5e598",
  "block": 13658016,
  "trx_in_block": 20,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:41:42",
  "op": [
    "vote",
    {
      "voter": "daveks",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 100
    }
  ]
}
2017/07/13 21:39:06
parent authorferumflex
parent permlinkhi-steemers
authortinashe
permlinkre-ferumflex-hi-steemers-20170713t213843762z
title
body###### ***© copyright - all rights reserved by @tinashe*** <center>&nbsp;Welcome to this incredible platform, hope everything will work out for you. Being here it’s not easy but not difficult neither only an extra effort will go a long way, engagement is the key good luck I’m @tinashe Start by Following ,Upvoting &amp;Resteeming people and they will do the same.&nbsp;</center> <center>QUICK TIPS FOR NEWBIES &#128073; [CLICK HERE]( https://steemit.com/newbie/@tinashe/3tnac7-repost-quick-tips-make-your-posts-better-than-they-already-are)</center> <center>*Thank you*</center> <center><a href="https://steemit.com/@tinashe"><img src="https://s6.postimg.org/ntve9iqo1/tinashe.gif"/></a></center> <center>CLICK&#128070; HERE</center>
json metadata{"tags":["introduceyourself"],"users":["tinashe"],"image":["https://s6.postimg.org/ntve9iqo1/tinashe.gif"],"links":["https://steemit.com/newbie/@tinashe/3tnac7-repost-quick-tips-make-your-posts-better-than-they-already-are","https://steemit.com/@tinashe"],"app":"steemit/0.1"}
Transaction InfoBlock #13657964/Trx 0b736c5d662ba851788245423eff5a774bcbb436
View Raw JSON Data
{
  "trx_id": "0b736c5d662ba851788245423eff5a774bcbb436",
  "block": 13657964,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:39:06",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "tinashe",
      "permlink": "re-ferumflex-hi-steemers-20170713t213843762z",
      "title": "",
      "body": "###### ***© copyright - all rights reserved by @tinashe***\n<center>&nbsp;Welcome to this incredible platform, hope everything will work out for you. Being here it’s not easy but not difficult neither only an extra effort will go a long way, engagement is the key good luck I’m @tinashe Start by Following ,Upvoting &amp;Resteeming people and they will do the same.&nbsp;</center>\n\n<center>QUICK TIPS FOR NEWBIES\n&#128073;  [CLICK HERE]( https://steemit.com/newbie/@tinashe/3tnac7-repost-quick-tips-make-your-posts-better-than-they-already-are)</center>\n\n<center>*Thank you*</center>\n<center><a href=\"https://steemit.com/@tinashe\"><img src=\"https://s6.postimg.org/ntve9iqo1/tinashe.gif\"/></a></center>\n<center>CLICK&#128070; HERE</center>",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"users\":[\"tinashe\"],\"image\":[\"https://s6.postimg.org/ntve9iqo1/tinashe.gif\"],\"links\":[\"https://steemit.com/newbie/@tinashe/3tnac7-repost-quick-tips-make-your-posts-better-than-they-already-are\",\"https://steemit.com/@tinashe\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
2017/07/13 21:25:24
parent authorferumflex
parent permlinkhi-steemers
authorprotzel
permlinkre-ferumflex-hi-steemers-20170713t212519717z
title
bodyWelcome... you look like theon greyjoy xD
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13657690/Trx 5dcd5704c50e401235b86a7789ce7946788ee43c
View Raw JSON Data
{
  "trx_id": "5dcd5704c50e401235b86a7789ce7946788ee43c",
  "block": 13657690,
  "trx_in_block": 17,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:25:24",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "protzel",
      "permlink": "re-ferumflex-hi-steemers-20170713t212519717z",
      "title": "",
      "body": "Welcome... you look like theon greyjoy xD",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}
edjeupvoted (100.00%) @ferumflex / hi-steemers
2017/07/13 21:21:33
voteredje
authorferumflex
permlinkhi-steemers
weight10000 (100.00%)
Transaction InfoBlock #13657613/Trx 235219f6b470ff430964ee21bae29eab66f9e2f3
View Raw JSON Data
{
  "trx_id": "235219f6b470ff430964ee21bae29eab66f9e2f3",
  "block": 13657613,
  "trx_in_block": 20,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:21:33",
  "op": [
    "vote",
    {
      "voter": "edje",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 10000
    }
  ]
}
joeleupvoted (2.00%) @ferumflex / hi-steemers
2017/07/13 21:12:24
voterjoele
authorferumflex
permlinkhi-steemers
weight200 (2.00%)
Transaction InfoBlock #13657430/Trx cee44f01b3a64edb73ecf9cc8d8ccb7cc48f3823
View Raw JSON Data
{
  "trx_id": "cee44f01b3a64edb73ecf9cc8d8ccb7cc48f3823",
  "block": 13657430,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:12:24",
  "op": [
    "vote",
    {
      "voter": "joele",
      "author": "ferumflex",
      "permlink": "hi-steemers",
      "weight": 200
    }
  ]
}
2017/07/13 21:04:39
parent authorferumflex
parent permlinkhi-steemers
authorthomasmmaker
permlinkre-ferumflex-hi-steemers-20170713t210438945z
title
bodyWelcome to Steemit friend! Neural network looks something difficult and interesting! Hahah! Hope you enjoy the community here! Followed! :D
json metadata{"tags":["introduceyourself"],"app":"steemit/0.1"}
Transaction InfoBlock #13657275/Trx 5ec6d8d244c8372bfbd27d406738b405f1c42c0e
View Raw JSON Data
{
  "trx_id": "5ec6d8d244c8372bfbd27d406738b405f1c42c0e",
  "block": 13657275,
  "trx_in_block": 12,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2017-07-13T21:04:39",
  "op": [
    "comment",
    {
      "parent_author": "ferumflex",
      "parent_permlink": "hi-steemers",
      "author": "thomasmmaker",
      "permlink": "re-ferumflex-hi-steemers-20170713t210438945z",
      "title": "",
      "body": "Welcome to Steemit friend! Neural network looks something difficult and interesting! Hahah! Hope you enjoy the community here! Followed! :D",
      "json_metadata": "{\"tags\":[\"introduceyourself\"],\"app\":\"steemit/0.1\"}"
    }
  ]
}

Account Metadata

POSTING JSON METADATA
None
JSON METADATA
None
{
  "posting_json_metadata": {},
  "json_metadata": {}
}

Auth Keys

Owner
Single Signature
Public Keys
STM7Cek1ERLiixy3ACsqS4tR26pDtTtQD4HJytfiTMce17wawtAry1/1
Active
Single Signature
Public Keys
STM5WCC4we349fvBN9JJdTxoeDWEE3qKWcjZvuB9b1PTqgbb3ZWSm1/1
Posting
Single Signature
Public Keys
STM6VW5oTvqjTkcmvuWdunpfcmFdXQNrXiwh8YErDY8jLM4BJzYHF1/1
Memo
STM8gNbzBC7xxKKNUnFnBxEwT57v72R1bt4iGtsnwR5UwySgaatjg
{
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM7Cek1ERLiixy3ACsqS4tR26pDtTtQD4HJytfiTMce17wawtAry",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM5WCC4we349fvBN9JJdTxoeDWEE3qKWcjZvuB9b1PTqgbb3ZWSm",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6VW5oTvqjTkcmvuWdunpfcmFdXQNrXiwh8YErDY8jLM4BJzYHF",
        1
      ]
    ]
  },
  "memo": "STM8gNbzBC7xxKKNUnFnBxEwT57v72R1bt4iGtsnwR5UwySgaatjg"
}

Witness Votes

0 / 30
No active witness votes.
[]