abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 04:11 | Komunita

    V Berlíně probíhá konference vývojářů a uživatelů desktopového prostředí KDE Plasma Akademy 2025. Při té příležitosti byla oznámena alfa verze nové linuxové distribuce KDE Linux.

    Ladislav Hagara | Komentářů: 0
    včera 17:11 | Nová verze

    Byl vydán Debian 13.1, tj. první opravná verze Debianu 13 s kódovým názvem Trixie a Debian 12.12, tj. dvanáctá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 13 a Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.

    Ladislav Hagara | Komentářů: 0
    5.9. 23:44 | IT novinky

    Evropská komise potrestala Google ze skupiny Alphabet pokutou 2,95 miliardy eur (71,9 miliardy Kč) za porušení antimonopolní legislativy. Podle EK, která mimo jiné plní funkci antimonopolního orgánu EU, se Google dopustil protisoutěžních praktik ve svém reklamním byznysu. Google v reakci uvedl, že rozhodnutí považuje za chybné a hodlá se proti němu odvolat. EK ve věci rozhodovala na základě stížnosti Evropské rady vydavatelů. Podle

    … více »
    Ladislav Hagara | Komentářů: 15
    5.9. 23:11 | Komunita

    Podpora 32bitového Firefoxu pro Linux skončí v roce 2026. Poslední podporované 32bitové verze budou Firefox 144 a Firefox 140 s rozšířenou podporou, jehož podpora skončí v září 2026.

    Ladislav Hagara | Komentářů: 2
    5.9. 19:33 | IT novinky

    Společnost Raspberry Pi nově nabízí Raspberry Pi SSD s kapacitou 1 TB za 70 dolarů.

    Ladislav Hagara | Komentářů: 7
    5.9. 15:55 | Zajímavý software

    Microsoft BASIC pro mikroprocesor 6502 byl uvolněn jako open source. Zdrojový kód je k dispozici na GitHubu.

    Ladislav Hagara | Komentářů: 5
    5.9. 15:33 | IT novinky

    Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) se připojil k dokumentu „A Shared Vision of Software Bill of Materials (SBOM) for Cybersecurity“, který vydala americká Agentura pro kybernetickou a infrastrukturní bezpečnost (CISA) s Národní bezpečnostní agenturou (NSA), spolu s dalšími mezinárodními partnery. Dokument vznikl v rámci globálního expertního fóra pro SBOM, které má za cíl motivovat k širšímu využívání … více »

    Ladislav Hagara | Komentářů: 3
    4.9. 21:22 | IT novinky

    Švýcarská AI centra EPFL, ETH Zurich a CSCS představila otevřený vícejazyčný velký jazykový model (LLM) s názvem Apertus. Vyzkoušet lze na stránce Public AI Inference Utility.

    Ladislav Hagara | Komentářů: 26
    4.9. 17:22 | Nová verze

    Byl vydán Linux Mint 22.2 s kódovým jménem Zara. Podrobnosti v přehledu novinek a poznámkách k vydání. Vypíchnout lze novou XApp aplikaci Fingwit pro autentizaci pomocí otisků prstů nebo vlastní fork knihovny libAdwaita s názvem libAdapta podporující grafická témata. Linux Mint 22.2 bude podporován do roku 2029.

    Ladislav Hagara | Komentářů: 2
    4.9. 12:55 | IT novinky

    Čínská společnost Tencent uvolnila svůj AI model HunyuanWorld-Voyager pro generování videí 3D světů z jednoho obrázku a určené trajektorie kamery. Licence ale nedovoluje jeho používání na území Evropské unie, Spojeného království a Jižní Koreje.

    Ladislav Hagara | Komentářů: 1
    Pro otevření více webových stránek ve webovém prohlížečí používám
     (83%)
     (7%)
     (2%)
     (3%)
     (3%)
     (2%)
    Celkem 151 hlasů
     Komentářů: 11, poslední 4.9. 16:12
    Rozcestník

    Dotaz: Ocave - prosím o radu

    24.4.2012 22:38 Standa
    Ocave - prosím o radu
    Přečteno: 246×
    Ptrosím o radu, jak naložit s následujícím problémem. V příslušné složce mám uložený obrázek bakterieBW.tif a v Octave mám napsaný následující kód, který má sečíst hodnoty jasu v jednotlivých pixelech.

    A=imread("bakterieBW.tif");
    s=0;
    for i=1:1:rows(A)
    for j=1:1:columns(A)
    s=s+A(i,j)
    end
    end

    Místo toho začne sčítat do okamžiku, kdy je hodnota v proměnné s=255 a pak už píše jen ty 255 a nic nepřičítá (přestože ten obrázek opravdu není černý ;-) ). Jistě je to nějaká blbost, ale už se s tím trápím dva dny a nemám ten správný nadhed. Děkuju předem za radu.

    Řešení dotazu:


    Odpovědi

    25.4.2012 01:50 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    no zřejmě je proměnná s o velikosti unsigned byte tak zkusit nadefinovat proměnnou alespon long.
    25.4.2012 08:57 Petr
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    Ale kdeže for, na takovéto triviality jsou předdefinované příkazy: s=sum(A(:))
    25.4.2012 14:23 Petr
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    Použije-li se příkaze whos A, tak Octave vypíše, že typ je uint8. Tak to přetypuj na double, tj. A=double(A), a bude to fungovat dle očekávání.

    Pokud je cílem sečtení nějakých nadprahových hodnot, tak ani tehdy by kód neměl obsahovat žádný for; což třebas takhle:

    s=sum(A(A>127))
    
    25.4.2012 15:39 Standa
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    No jo, nemám Octave ještě tak v paži, nenapadlo mě to takhle ... děkuju moc, už to chodí :-)
    25.4.2012 10:15 jkhkjhkhj
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    Je to dost zvlastni. Asi by mohlo pomoct:

    s=0.0; #! realne cislo, nikoli cele

    Ale jinak bude asi rychlejsi pouzit proste: s = sum(A(1:rows(A),1:columns(A));

    (jelikoz v octave jako interpretu se v kazdem cyklu musi nejak interpretovat skoro kazdy radek, kdezto funkce jsou obvykle implementovane pres rychlejsi C knihovny).
    25.4.2012 10:59 Standa
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    Pánové, děkuju. Zkusil jsem vaše návrhy, bohužel nepomohlo. Rozepíšu problém víc.
    Vyjel jsem si konkrétní hodnoty v buňkách A(1,1),A(1,2),...až A(1,20). Po řadě jsem získal tyto hodnoty: 16+15+15+16+16+15+15+15+14+15+15+15+16+17+18+20+22+25+30+36, což se rovná 366. Octave vytrvale hlásí těch svých 255. Až do ...+...+A(1,16)=253 ukazuje dobře, když k tomu přičtu A(1,17), vypíše 255 místo správných 275 a dál píše svých 255.
    Když jsem udělal pokus a místo hodnot z toho obrázku jsem napsal:

    % soucet prvku matice
    s=0;
    for i=1:1:10
    for j=1:1:10
    A(i,j)=i+j
    s=s+A(i,j)
    end
    end

    tak to funguje. Jestli mu nějak vadí, že je to z fotky? Ale to je asi blbost, pracuje s číslama... . A nebo jestli je to pro něj moc velké? Ale pak zase nechápu, proč se zastaví u tak malého čísla, jakým je 255. A ve "funkčním" příkladu taky neuvádím datový typ toho s.

    Jinak vím, že v tomto případě to lze udělat bez cyklu for, ale ve skutečnosti projíždím jednotlivé prvky tý matice a porovnávám s hodnotou prahu a sčítám ty s větší a ty s menší hodnotou zvlášť. Pro můj dotaz jsem jen vypreparoval to, co dělá problémy a napsal demonstrační kód.

    Takže prosím ještě jednou o pomoc :-). Díky.
    25.4.2012 11:21 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    A zkusil jste před cyklem do toho s zapsat nějaké velké číslo nebo sečíst dvě velká čísla? 255 je samozřejmě maximum pro hodnotu v unsigned byte a pokud více místa nemá, nic nepřičte, Otázka je proč si pro s rezervoval tak málo nebo jestli při té sčítací operaci nepřechází přes něco co mu provede limitaci.
    25.4.2012 11:30 Standa
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    Nezkusil, ale zkusil jsem do toho "funkčního" kódu místo do 10 sčítat oba indexy do 1000. Výpočet trval déle, nicméně nakonec vypadlo číslo s=1.0010e+009, což je asi dobře. Takže mu možná vadí něco na zdrojových datech, ale netuším co, když taky jen sčítá čísla. Nevím, co by mu mohlo provést limitaci, ty ukázkové kódy jsou kompletní, nic jinýho nedělají.
    25.4.2012 11:53 lertimir | skóre: 64 | blog: Par_slov
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    A jaký je rozdíl v tech zdrojových datech v tech vašich dvou příkladech? Také můžete zkusit to sčítání ještě přes jedno přiřazení.
    % soucet prvku matice
    s=0;
    for i=1:1:10
    for j=1:1:10
    A(i,j)=i+j
    b=A(i,j)
    s=s+b
    end
    end
    a to b bude normální číslo. možná provádí nějaké inteligentní odhady datových typů a pro ty čísla z obrázku má právě datový typ unsigned byte.
    25.4.2012 12:16 Standa
    Rozbalit Rozbalit vše Re: Ocave - prosím o radu
    tak jsem to podle rady upravil ... a výsledek je... 255 :-(

    % soucet matice
    A=imread("bakterieBW.tif");
    s=0;
    for i=1:1:rows(A)
      for j=1:1:columns(A)
      b=A(i,j);
      s=s+b;
      end
    end
    disp(s)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.