Open barrydeslager opened 9 years ago
Ik heb de if's aangepast bij alle verhoudingen. Ik krijg een error in de onderste regel en ik snap de syntax niet hoe ik moet aangeven dat ik gelijk wil laten horen wanneer de code de fibonacci heeft gevonden.
Je moet sowieso regel 89 t/m 121 nog aanpassen, daar staat overal nog verhouding1
.
En dan als je geluid wil laten horen: ergens na regel 144, (nadat je die if
hebt gefixt ... zoal in m'n eerdere mail beschreven).
Het enige probleem wat ik dan nog kan bedenken, is dat het geluidsfragment langer duurt dan 1 frame van de applicatie. Want als de applicatie goed draait, doet hij zo'n 30 frames per seconde. Dus 30 x per seconde wordt draw aangeroepen. Dus als er een fibonacci verhouding wordt gevonden, zal hij ook zo'n 30 x per seconde dat geluid laten horen. Misschien is dat wat te veel van het goede, zeker als je geluidsfragment langer duurt dan 1/30 seconde.
Om dat netjes op te lossen zou je ervoor kunnen kiezen om alleen maar het geluid te laten horen als het van geen naar wel fibonacci gaat. Daarvoor heb je een extra globale variabele nodig: een boolean die je bijv. gevondenStatus
noemt. (global variabele: definieer de variabele bovenin je code: boolean gevondenStatus;
, en zet de begin waarde in de setup(): gevondenStatus = false;
)
Dan in de draw(), in de bovengenoemde if
if (gevonden) {
if (!gevondenStatus) {
// fibonacci begint gevonden te worden
// speel geluid af
//
// update de waarde van gevondenStatus
gevondenStatus = true;
}
// doe dingen elk frame dat fibonacci gevonden is
} else {
if (gevondenStatus) {
// fibonacci was gevonden, maar nu niet meer
// stop met afspelen van geluid (als dat nog bezig was)
//
// update de waarde van gevondenStatus
gevondenStatus = false;
}
}
Succes!
Hallo Dirk,
Bedankt voor je reactie. Ik probeer het te begrijpen, maar het lukt me niet om er vat op te krijgen. Hoe schrijf ik dat ik iets wil afspelen? ik kan geen voorbeelden vinden op het internet. De moed zakt me een beetje in de schoenen eerlijk gezegd.
Gr Josse
Van: Dirk van Oosterbosch [notifications@github.com] Verzonden: maandag 8 juni 2015 9:46 Aan: ArtezGDA/Face-rec-confirm CC: Josse Hermsen Onderwerp: [Marketing Mail] Re: [Face-rec-confirm] Face Rec with code recognition. Need some help (#1)
Je moet sowieso regel 89 t/m 121 nog aanpassen, daar staat overal nog verhouding1.
En dan als je geluid wil laten horen: ergens na regel 144, (nadat je die if hebt gefixt ... zoal in m'n eerdere mail beschreven).
Het enige probleem wat ik dan nog kan bedenken, is dat het geluidsfragment langer duurt dan 1 frame van de applicatie. Want als de applicatie goed draait, doet hij zo'n 30 frames per seconde. Dus 30 x per seconde wordt draw aangeroepen. Dus als er een fibonacci verhouding wordt gevonden, zal hij ook zo'n 30 x per seconde dat geluid laten horen. Misschien is dat wat te veel van het goede, zeker als je geluidsfragment langer duurt dan 1/30 seconde.
Om dat netjes op te lossen zou je ervoor kunnen kiezen om alleen maar het geluid te laten horen als het van geen naar wel fibonacci gaat. Daarvoor heb je een extra globale variabele nodig: een boolean die je bijv. gevondenStatus noemt. (global variabele: definieer de variabele bovenin je code: boolean gevondenStatus;, en zet de begin waarde in de setup(): gevondenStatus = false;)
Dan in de draw(), in de bovengenoemde if
if (gevonden) { if (!gevondenStatus) { // fibonacci begint gevonden te worden // speel geluid af // // update de waarde van gevondenStatus gevondenStatus = true; } // doe dingen elk frame dat fibonacci gevonden is } else { if (gevondenStatus) { // fibonacci was gevonden, maar nu niet meer // stop met afspelen van geluid (als dat nog bezig was) // // update de waarde van gevondenStatus gevondenStatus = false; } }
Succes!
— Reply to this email directly or view it on GitHubhttps://github.com/ArtezGDA/Face-rec-confirm/issues/1#issuecomment-109894297.
Hallo Josse,
een simpel voorbeeld van het afspelen van geluid, zie ik hier: http://stackoverflow.com/a/16324538/153436
opmerking 1: en de audio input in dit voorbeeld zou je kunnen weglaten denk ik. opmerking 2: ipv player.close() en player = minim.loadFile(…) in de mouseReleased, kan je ook player.pause() + player.rewind() gebruiken: daarmee pauzeer je het geluid en spoel je het terug.
opmerking 3: om hiermee aan de slag te gaan zou ik de volgende stappen hanteren:
Succes! Dirk
On 8 jun. 2015, at 15:21, barrydeslager notifications@github.com<mailto:notifications@github.com> wrote:
Hallo Dirk,
Bedankt voor je reactie. Ik probeer het te begrijpen, maar het lukt me niet om er vat op te krijgen. Hoe schrijf ik dat ik iets wil afspelen? ik kan geen voorbeelden vinden op het internet. De moed zakt me een beetje in de schoenen eerlijk gezegd.
Gr Josse
IR Labs Dirk van Oosterbosch
developer@irlabs.nlmailto:developer@irlabs.nl
Dirk van Oosterbosch docent Media Design - Graphic Design 06 48401910
Hallo Dirk,
Heb je voor mij een voorbeeld van een capture cam? dat er een foto gemaakt word wanneer de fibonacci is gevonden. Ik heb een aantal voorbeelden, maar ik weet niet of ik er wat aan heb http://forum.processing.org/two/discussion/8423/make-a-image-trace-on-a-capture-cam en https://processing.org/reference/libraries/video/Capture.html
Gr josse
Van: Dirk van Oosterbosch [notifications@github.com] Verzonden: dinsdag 9 juni 2015 9:57 Aan: ArtezGDA/Face-rec-confirm CC: Josse Hermsen Onderwerp: [Marketing Mail] Re: [Face-rec-confirm] Face Rec with code recognition. Need some help (#1)
Hallo Josse,
een simpel voorbeeld van het afspelen van geluid, zie ik hier: http://stackoverflow.com/a/16324538/153436
opmerking 1: en de audio input in dit voorbeeld zou je kunnen weglaten denk ik. opmerking 2: ipv player.close() en player = minim.loadFile(…) in de mouseReleased, kan je ook player.pause() + player.rewind() gebruiken: daarmee pauzeer je het geluid en spoel je het terug.
opmerking 3: om hiermee aan de slag te gaan zou ik de volgende stappen hanteren:
Succes! Dirk
On 8 jun. 2015, at 15:21, barrydeslager notifications@github.com<mailto:notifications@github.com> wrote:
Hallo Dirk,
Bedankt voor je reactie. Ik probeer het te begrijpen, maar het lukt me niet om er vat op te krijgen. Hoe schrijf ik dat ik iets wil afspelen? ik kan geen voorbeelden vinden op het internet. De moed zakt me een beetje in de schoenen eerlijk gezegd.
Gr Josse
IR Labs Dirk van Oosterbosch
developer@irlabs.nlmailto:developer@irlabs.nl
Dirk van Oosterbosch docent Media Design - Graphic Design 06 48401910
— Reply to this email directly or view it on GitHubhttps://github.com/ArtezGDA/Face-rec-confirm/issues/1#issuecomment-110265981.
Hallo Josse,
http://forum.processing.org/one/topic/how-can-i-save-a-frame-of-video-without-drawing-it-on-the-screen#25080000000756335.html http://forum.processing.org/one/topic/how-can-i-save-a-frame-of-video-without-drawing-it-on-the-screen#25080000000756335.html
Check het antwoord van cedrickie:
Je hebt al een Capture object (die heet ‘video’ bij jou). Dus het enige wat je hoeft te doen is: (op het moment dat je zou willen saven)
video.save(frameCount + “.png”);
Success! Dirk
On 15 Jun 2015, at 14:01, barrydeslager notifications@github.com wrote:
Hallo Dirk,
Heb je voor mij een voorbeeld van een capture cam? dat er een foto gemaakt word wanneer de fibonacci is gevonden. Ik heb een aantal voorbeelden, maar ik weet niet of ik er wat aan heb http://forum.processing.org/two/discussion/8423/make-a-image-trace-on-a-capture-cam en https://processing.org/reference/libraries/video/Capture.html
Gr josse
Van: Dirk van Oosterbosch [notifications@github.com] Verzonden: dinsdag 9 juni 2015 9:57 Aan: ArtezGDA/Face-rec-confirm CC: Josse Hermsen Onderwerp: [Marketing Mail] Re: [Face-rec-confirm] Face Rec with code recognition. Need some help (#1)
Hallo Josse,
een simpel voorbeeld van het afspelen van geluid, zie ik hier: http://stackoverflow.com/a/16324538/153436
opmerking 1: en de audio input in dit voorbeeld zou je kunnen weglaten denk ik. opmerking 2: ipv player.close() en player = minim.loadFile(…) in de mouseReleased, kan je ook player.pause() + player.rewind() gebruiken: daarmee pauzeer je het geluid en spoel je het terug.
opmerking 3: om hiermee aan de slag te gaan zou ik de volgende stappen hanteren:
- stap 1: gebruik deze code van stackoverflow voor een simpel voorbeeld
- stap 2: als dat werkt (je zal die minim library eerst moeten installeren), pas de code een beetje aan, volgens mijn tips:
- verwijder de (audioInput) input variabele
- vervang de player.close // player = minim.loadFile(..) code door player.pause() / player.rewind() -stap 3: als dat goed werkt en je begrijpt de code en snapt wat alle onderdelen doen, kan je verder: zet alle onderdelen op hun plek in je fibonacci app:
- Alles boven de setup() wat van belang is
- Alle relevante code in de setup()
- de code voor het beginnen van afspelen op de goede plek
- de code voor het stoppen met afspelen op de goede plek
Succes! Dirk
On 8 jun. 2015, at 15:21, barrydeslager notifications@github.com<mailto:notifications@github.com> wrote:
Hallo Dirk,
Bedankt voor je reactie. Ik probeer het te begrijpen, maar het lukt me niet om er vat op te krijgen. Hoe schrijf ik dat ik iets wil afspelen? ik kan geen voorbeelden vinden op het internet. De moed zakt me een beetje in de schoenen eerlijk gezegd.
Gr Josse
IR Labs Dirk van Oosterbosch
developer@irlabs.nlmailto:developer@irlabs.nl
http://irlabs.nl/code/
Dirk van Oosterbosch docent Media Design - Graphic Design 06 48401910
d.van.oosterbosch@artez.nlmailto:d.van.oosterbosch@artez.nl
— Reply to this email directly or view it on GitHubhttps://github.com/ArtezGDA/Face-rec-confirm/issues/1#issuecomment-110265981. — Reply to this email directly or view it on GitHub https://github.com/ArtezGDA/Face-rec-confirm/issues/1#issuecomment-112036317.
import gab.opencv.; import processing.video.; import java.awt.*;
Capture video; OpenCV opencv; PImage img;
void setup() { size(640, 480); video = new Capture(this, 640/2, 480/2); opencv = new OpenCV(this, 640/2, 480/2); opencv.loadCascade(OpenCV.CASCADE_FRONTALFACE);
video.start();
img = loadImage("fibon.png"); }
void draw() { scale(2); opencv.loadImage(video);
boolean gevonden = false; image(video, 0, 0 );
noFill(); stroke(0, 255, 0); strokeWeight(15); Rectangle[] faces = opencv.detect(); println(faces.length);
if (faces.length > 1) { Rectangle gezicht1 = faces[0]; Rectangle gezicht2 = faces[1];
for (int i = 0; i < faces.length; i++) { println(faces[i].x + "," + faces[i].y);
}
if (gevonden ) { // doe iets als gevonden } else { // doe iets als niet gevonden } }
void captureEvent(Capture c) { c.read(); }