Gupta
How i acn upadate the value of the variable “square=0” as mention in my code so that after every loop it will update it by addind + 1 in “square=0”
this is my code :
def findcontours(path) do
#squares=0
{:ok, imgGrey} = OpenCV.imread(path, flags: OpenCV.cv_IMREAD_GRAYSCALE())
{:ok, {_, thrash}} = OpenCV.threshold(imgGrey, 240, 255, OpenCV.cv_THRESH_BINARY())
{:ok, {contours, _}} =OpenCV.findContours(thrash, OpenCV.cv_RETR_TREE(), OpenCV.cv_CHAIN_APPROX_NONE())
square = 0
for contour <- contours do
{:ok,peri} = OpenCV.arcLength(contour,true)
{:ok,approx} = OpenCV.approxPolyDP(contour, 0.01 * peri,true)
ap=OpenCV.Nx.to_nx(approx)
{len,_,_}=Nx.shape(ap)
if len==4 do #to bound squares from the countor
{:ok,{x1, y1, w, h}}= OpenCV.boundingRect(approx)
aspectRatio = (w/1)/h
if aspectRatio >= 0.95 and aspectRatio <= 1.05 and (y1+h)*(x1+w) < 985000 do
square=square +1
end
end
end
end
pls help me to update my value of square as i know there i a big problem of scope in elixir and also it is immutable so pls help me for this.
or suggest me another way so that i can do the whole process by another way if possible.
Trending in Questions
Hello!
Suppose you are building workflow (order / task / payment) processing system with the following requirements:
Each workflow con...
New
I’m in search of an Elixir library that offers PDF generation capabilities similar to Ruby’s Prawn. While there have been discussions abo...
New
Hey guys,
I’ve got a huge CSV ( around 10 GB ) that needs to be processed hourly
Do you guys have any suggestions what is the best prac...
New
Kia ora,
We have been using elixir-google-api to connect to Google Drive. However, with the updates to Tesla due to CVEs this is now bro...
New
Hello!
Could someone please give me a help/sample code, how to delete a file from s3 using waffle/waffle_ecto from Phoenix app.
I creat...
New
I’ve followed the Phoenix LiveView file upload code here Uploads — Phoenix LiveView v1.0.0-rc.7 and so far everything works just fine wit...
New
I have what I’ve heard referred to as a “lookup table” in my database. This is a way of assigning codes to common values. One common lo...
New
Other Trending Topics
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
Hobbes is a low-level distributed database for the Elixir programming language.
Hobbes provides a simple, safe, and scalable storage lay...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve.
They are GUI (Emerge) and State management (S...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #blog-post
- #ai
- #phoenix_html
- #iex
- #elixirconf-us
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #hex
- #security
- #metaprogramming










Showing Posts 1 to 10- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
Aetherus
In Elixir, variables are actually constants. You can’t reassign values to an existing variable. You can only create a new variable with the same name and shadow the old one.
This line
square = square + 1reads the value ofsquareoutside the for-loop, adds 1 to it, and creates a new variable also namedsquare, which is not used at all, because this newsquarevariable is inside a sub-sub scope of the for-loop, and the oldsquareis outside the for-loop. They are in different scopes.How to fix this?
Gupta
can u explain me briefly what u have done in this
so that in further code if i will face problem regarding this i can rectify it
Aetherus
Here’s a simple example of the
forcomprehension with the option:reduce:It’s equivalent to this code (I’m using the same variable names as in the snippet above):
The
forcomprehension first passes0, the value of the option:reduce, toacc, the first element in1..10ton, and apply the anonymous function toaccandn. Then it passes the return value of the anonymous function toacc, the second element in1..10ton, and apply the anonymous function again. So on and so forth, until there’s no element to take from1..10, then it returns the return value of the last call of that anonymous function.Aetherus
And note that both
for ... do ... endandif ... else ... endare expressions, and they have return values.The
ifwithoutelsereturns whatever inside theifblock returns, if the condition is met, otherwise, it returnsnil, which usually is not what you want, so be careful.Gupta
I was trying to use tesseract-Ocr in elixir
but i am getting error pls :
pls help me to rectify it
dimitarvp
It means the file path you specified does not exist.
Use
File.exists?insideiexto find the right file path.Gupta
I am getting error again :
why it is showing again this .
also i think i have the tesseract dependencies in mix.exs
but still it is showing me the error
dimitarvp
It’s expecting you to have
tesseractinstalled and put in the system PATH.What does
which tesseractshow you when you run it in a terminal?Gupta
This the path i have added in my system.
and this is my file location and location of my image grid_1.png is also there:
and this is my code with error i have written :
Now I am not getting where is the error , i am not able to read a single image.
dimitarvp
Have you run
which tesseract? If so, can you paste the output of the command?