Laravel 5 – errors
Laravel 5 – bootstrap/cache/services.php): failed to open stream: Permission denied
Solution : Chmod 777, recursive !
Laravel 5 – bootstrap/cache/services.php): failed to open stream: Permission denied
Solution : Chmod 777, recursive !
Laravel 5 And His F*cking non-persistent App SetLocale : http://mydnic.be/post/laravel-5-and-his-fcking-non-persistent-app-setlocale
If you ever have worked already with Laravel 5 (if not, you should), and that you needed a decent way to switch language into your application, well good luck.
The thing is, it was really easier with Laravel 4.
Ok I’m not going to explain why and how and all, because you know that I mainly use my website to store snippets and reminder about HOW I SOLVED THIS NIGHTMARE OF A PROBLEM.
Example on how to use multiple locales in your Laravel 5 website : https://laracasts.com/discuss/channels/tips/example-on-how-to-use-multiple-locales-in-your-laravel-5-website
Set Locale with Middleware in Laravel 5 : https://laracasts.com/discuss/channels/general-discussion/set-locale-with-middleware-in-laravel-5
Laravel 5 :: Switch Language : http://laravel.io/forum/02-23-2015-laravel-5-switch-language?page=1
PHP Multithreading using pthreads extension
A lot of PHP developers face situations on which they need to execute multiple tasks in parallel. This is the case for using multithreading solutions.
http://www.phpclasses.org/blog/post/422-PHP-Multithreading-using-pthreads-extension.html
forrás: Facebook beszélgetésből
Egy rajzfelismerő alkalmazást akarok írni, ami tök egyszerű formákat, pl Kör, négyzet, háromszög stb… felismer. Mármint hogy a júzer lerajzolja a képernyőre és a program felismeri az előre megadottak közül, hogy melyik az.
Ki hogyan csinálna egy ilyen algoritmust?
A jelenlegi elgondolásom:
Először azonos méretűre skálázza a 2 mintát. Azután a bal felső sarkot használva mint nézőpont X mintát vesz a rajzból, legyen mondjuk X = 90, tehát 1 fokonként minden szögnél. Majd ezen a Xi-edik mintán (ami egy vonal a bal felső saroktól indulva) lekéri az összes pontot ami átmegy a rajzon. Ezt megteszi mind a két rajzzal, végül minden egyes mintánál megnézi hogy az átmeneti pontok mennyire vannak messze egymástól. Végül kiszámolja, hogy átlagosan mennyire voltak messze a kapott mintavételi pontok és ha ez túllép egy értéket akkor nem az adott rajz van a képernyőn.
De hátha van valakinek egy jobb megoldása erre.- Jelenleg a turning Function-on állok, hogy azzal vizsgálom meg az egyes formákat, egyszerűnek tűnik és gyorsnak
—
Bármit felismerni nyilván nem lehet. Kell lennie egy “ABC”-dnek, amiket ismersz.
—
Szerintem inkább regressziót használj, vagy klaszterezést. Egy csomó templatelős marhaságot megspórolsz magadnak
****
Detecting some simple shapes in images : http://www.aforgenet.com/articles/shape_checker/
*****
Hough transform : https://en.wikipedia.org/wiki/Hough_transform
******
Handwriting Recognition with Python :
https://www.youtube.com/watch?v=PO4hePKWIGQ
******
Mi az egyetemen MatLabot használtunk erre a célra, egy jó algoritmussal nagyon jó felismerőt lehet készíteni. A konkrét metodikára már nem emlékszem de elérhetőek példakódok is és ha mélyebben beleásol tudod optimalizálni a felismerést (pontosságot javítani illetve beállítani mennyire legyen megengedő a program a felismerés során).
Recognition methods in image processing : http://www.mathworks.com/discovery/image-recognition.html?requestedDomain=www.mathworks.com&requestedDomain=de.mathworks.com
*************************
Tegnap kértem segítséget egy alakzatfelismerő apphoz, mára sikerült az első protoípust megírnom Unity Engine-hez
Szeretném megköszönni mindenkinek a segítséget. Egyébben a TurningFunction-t alkalmaztam.
https://sites.google.com/site/turningfunctions/
Itt a kód annak aki kérte:
using UnityEngine;
using System.Collections;
public class Pattern
{
const float angleDivider = 180f;
public Vector2[] points;
public float vectorsLengthSum;
public float[] positions;
public float[] valueOnLines;
public Pattern(Vector2[] points)
{
this.points = points;
vectorsLengthSum = 0f;
Vector2 prevPoint = points[0];
for (int i = 0; i < points.Length; i++)
{
vectorsLengthSum += Vector2.Distance(prevPoint, points[i]);
prevPoint = points[i];
}
GenerateTurningFuncion();
}
void GenerateTurningFuncion()
{
positions = new float[points.Length];
valueOnLines = new float[points.Length - 1];
float pos = 0f;
Vector2 prevPoint = points[0];
Vector2 prevLine = points[0] - Vector2.right;
float value = SignedAngle(Vector2.right, prevLine) / angleDivider;
//Count the positions of the points in the shape.
for (int i = 0; i < points.Length; i++)
{
pos += Vector2.Distance(prevPoint, points[i]) / vectorsLengthSum;
positions[i] = pos;
//Count each value on each line
if (i > 0)
{
Vector2 line = points[i] - points[i - 1];
value += SignedAngle(prevLine, line) / angleDivider;
valueOnLines[i - 1] = value;
Debug.Log("Line: " + line + " - " + prevLine + "\t Angle: " + SignedAngle(prevLine, line) + "\t Value: " + value + "\t Added: " + SignedAngle(prevLine, line) / angleDivider);
prevLine = line;
}
prevPoint = points[i];
}
}
public float[] Sample(int sampleCount)
{
float[] samples = new float[sampleCount];
int lineIndex = 0;
for (int i = 0; i < sampleCount; i++)
{
float samplePos = i / (float)sampleCount;
while (positions[lineIndex + 1] < samplePos)
lineIndex++;
samples[i] = valueOnLines[lineIndex];
//Debug.Log("i: " + i + "\t lineIndex: " + lineIndex + "\t samplePos: " + samplePos + "\t samples[i]: " + samples[i]);
}
return samples;
}
public static float AverageDifference(Pattern template, Pattern drawn, int samples)
{
return Difference(template, drawn, samples) / samples;
}
public static float Difference(Pattern template, Pattern drawn, int samples)
{
float[] sourceSamples = template.Sample(samples);
float[] targetSamples = drawn.Sample(samples);
float avg = 0f;
for (int i = 0; i < samples; i++)
avg += sourceSamples[i] - targetSamples[i];
return Mathf.Abs(avg);
}
float SignedAngle(Vector2 v1, Vector2 v2)
{
//var sign = Mathf.Sign(v1.x * v2.y - v1.y * v2.x);
float sign = Mathf.Sign(Vector3.Cross(v1, v2).z);
return Vector2.Angle(v1, v2) * sign;
}
}
************************************************************
“1. A szenvedést nem szabad dramatizálni! Nem szabad panaszkodni, mert attól gyengébb lesz az ember.
2. Az öröm szükséges a túléléshez. Ezért észre kell venni és tudatosan kell keresni az élet apró örömeit.
3. Nem vagyunk tökéletesek, de itt és most kell megmutatnunk, hogy különbek vagyunk rabtartóinknál. Ez mozgósítja az életenergiákat.
4. A negyedik szabály kicsit vallásos: akinek van hová kapaszkodnia, annak könnyebb. Mi hívők, ha a Jóistenbe kapaszkodunk, rájövünk, hogy Ő is akarja túlélésünket. A négy szabály a beszélgetések során alakult ki – nem én találtam ki –, és áthatotta az egész lágeréletünket.”[6]
http://napitortenelmiforras.blog.hu/2016/07/25/_az_uristennek_van_humora
A Documentation projekt keretében az oldal használói nyelvek, keretrendszerek és programozási felületek dokumentációit szerkeszthetik majd meg, közösségi alapon.
http://stackoverflow.com/documentation
http://prog.hu/hirek/4373/fejlesztoi-dokumentacios-oldalt-indit-a-stack-overflow
https://www.youtube.com/watch?v=tFHMdYDULOc
E:\server\\blog>php artisan make:auth
Created View: E:\server\blog\resources/views/auth/login.blade.php
Created View: E:\server\blog\resources/views/auth/register.blade.php
Created View: E:\server\blog\resources/views/auth/passwords/email.blade.php
Created View: E:\server\blog\resources/views/auth/passwords/reset.blade.php
Created View: E:\server\blog\resources/views/auth/emails/password.blade.php
Created View: E:\server\blog\resources/views/layouts/app.blade.php
Created View: E:\server\blog\resources/views/home.blade.php
Created View: E:\server\blog\resources/views/welcome.blade.php
Installed HomeController.
Updated Routes File.
Authentication scaffolding generated successfully!
Laravel 5.2 Socialite Facebook Login : https://blog.damirmiladinov.com/laravel/laravel-5.2-socialite-facebook-login.html#.V49C-KKjDH0
A pincében rendszeres az esőzés utáni felázás.
Egy akna és egy strapabíró ALKO szivattyú van. Sajnos az ALKO úszókapcsolója olyan, hogy csak akkor kapcsolna be, ha már derékig érne a víz. 🙂
A HTRONIC WPS 1000 vízszintjelző kapcsolót vásároltam meg és a képek alapján felszereltem.
https://www.conrad.hu/hu/h-tronic-wps-100-vizszint-kapcsolo-1114420-754092.html
Tegnap egész nap zuhogott az eső, a rendszer működött.
Képek a felszerelésről:
*********************************************
Vízszintjelző (25V-ig kapcsol) : https://www.conrad.hu/hu/kemo-vizszintjelzo-m158-modul-9-12-vdc-191317.html
Miniatűr relé 24 V/DC (230V-ot kapcsol): https://www.conrad.hu/hu/miniatur-rele-24-vdc-2-valto-10-a-250-vac-10-a250-vac-finder-553290240040-502870.html?sc.queryFromSuggest=true